home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / Interfaces&Libraries / Universal / Interfaces / AIncludes / GXPrinting.a < prev    next >
Encoding:
Text File  |  1998-08-17  |  82.0 KB  |  2,814 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        GXPrinting.a
  3. ;
  4. ;    Contains:    This file contains all printing APIs except for driver/extension specific ones.
  5. ;
  6. ;    Version:    Technology:    Quickdraw GX 1.1
  7. ;                Release:    Universal Interfaces 3.2
  8. ;
  9. ;    Copyright:    © 1994-1998 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        For bug reports, consult the following page on
  12. ;                the World Wide Web:
  13. ;
  14. ;                    http://developer.apple.com/bugreporter/
  15. ;
  16. ;
  17.     IF &TYPE('__GXPRINTING__') = 'UNDEFINED' THEN
  18. __GXPRINTING__ SET 1
  19.  
  20.     IF &TYPE('__CONDITIONALMACROS__') = 'UNDEFINED' THEN
  21.     include 'ConditionalMacros.a'
  22.     ENDIF
  23.     IF &TYPE('__COLLECTIONS__') = 'UNDEFINED' THEN
  24.     include 'Collections.a'
  25.     ENDIF
  26.     IF &TYPE('__DIALOGS__') = 'UNDEFINED' THEN
  27.     include 'Dialogs.a'
  28.     ENDIF
  29.     IF &TYPE('__ERRORS__') = 'UNDEFINED' THEN
  30.     include 'Errors.a'
  31.     ENDIF
  32.     IF &TYPE('__FILES__') = 'UNDEFINED' THEN
  33.     include 'Files.a'
  34.     ENDIF
  35.     IF &TYPE('__GXFONTS__') = 'UNDEFINED' THEN
  36.     include 'GXFonts.a'
  37.     ENDIF
  38.     IF &TYPE('__GXMATH__') = 'UNDEFINED' THEN
  39.     include 'GXMath.a'
  40.     ENDIF
  41.     IF &TYPE('__GXTYPES__') = 'UNDEFINED' THEN
  42.     include 'GXTypes.a'
  43.     ENDIF
  44.     IF &TYPE('__LISTS__') = 'UNDEFINED' THEN
  45.     include 'Lists.a'
  46.     ENDIF
  47.     IF &TYPE('__MENUS__') = 'UNDEFINED' THEN
  48.     include 'Menus.a'
  49.     ENDIF
  50.     IF &TYPE('__GXMESSAGES__') = 'UNDEFINED' THEN
  51.     include 'GXMessages.a'
  52.     ENDIF
  53.     IF &TYPE('__PRINTING__') = 'UNDEFINED' THEN
  54.     include 'Printing.a'
  55.     ENDIF
  56.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  57.     include 'Quickdraw.a'
  58.     ENDIF
  59.  
  60. ; ********************************************************************
  61. ;                    Start of old "GXPrintingManager.h/a/p" interface file.
  62. ;            ********************************************************************
  63.  
  64. ;  ------------------------------------------------------------------------------
  65. ;
  66. ;                            Printing Manager API Contants and Types
  67. ;
  68. ;-------------------------------------------------------------------------------- 
  69.  
  70.  
  71. ; typedef unsigned long                 gxOwnerSignature
  72.  
  73.     IF OLDROUTINENAMES THEN
  74. ; typedef unsigned long                 Signature
  75.  
  76.     ENDIF    ; OLDROUTINENAMES
  77. ;
  78. ;    ABSTRACT DATA TYPES
  79. ;
  80. ;
  81.  
  82.  
  83. ;   typedef struct gxPrivatePrinterRecord *gxPrinter;
  84. ;   typedef struct gxPrivateJobRecord *gxJob;
  85. ;   typedef struct gxPrivateFormatRecord *gxFormat;
  86. ;   typedef struct gxPrivatePaperTypeRecord *gxPaperType;
  87. ;   typedef struct gxPrivatePrintFileRecord *gxPrintFile;
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101. ;  Possible values for LoopStatus 
  102. ; typedef Boolean                         gxLoopStatus
  103.  
  104.  
  105. gxStopLooping                    EQU        0
  106. gxKeepLooping                    EQU        1
  107.     IF OLDROUTINENAMES THEN
  108. ; typedef GXViewDeviceProcPtr             gxViewDeviceProc
  109.  
  110. ; typedef GXFormatProcPtr                 gxFormatProc
  111.  
  112. ; typedef GXPaperTypeProcPtr             gxPaperTypeProc
  113.  
  114. ; typedef GXPrintingFlattenProcPtr         gxPrintingFlattenProc
  115.  
  116.     ENDIF    ; OLDROUTINENAMES
  117. ;    The following constants are used to set collection item flags in printing
  118. ;    collections. The Printing Manager purges certain items whenever a driver
  119. ;    switch occurs. If the formatting driver changes, all items marked as
  120. ;    gxVolatileFormattingDriverCategory will be purged.  If the output driver
  121. ;    changes, all items marked as gxVolatileOutputDriverCategory will be purged.
  122. ;    Note that to prevent items from being flattened when GXFlattenJob is called,
  123. ;    you should unset the collectionPersistenceBit (defined in Collections.h),
  124. ;    which is on by default.
  125. ;
  126.  
  127. ;  Structure stored in collection items' user attribute bits 
  128. ; typedef short                         gxCollectionCategory
  129.  
  130.  
  131. gxNoCollectionCategory            EQU        $0000
  132. gxOutputDriverCategory            EQU        $0001
  133. gxFormattingDriverCategory        EQU        $0002
  134. gxDriverVolatileCategory        EQU        $0004
  135. gxVolatileOutputDriverCategory    EQU        $0005
  136. gxVolatileFormattingDriverCategory EQU    $0006
  137.  
  138. ;
  139. ;    >>>>>> JOB COLLECTION ITEMS <<<<<<
  140. ;
  141. ;
  142.  
  143.  
  144. ;  gxJobInfo COLLECTION ITEM 
  145.  
  146. gxJobTag                        EQU        'job '
  147. gxJobInfo                RECORD 0
  148. numPages                 ds.l    1                ; offset: $0 (0)        ;  Number of pages in the document 
  149. priority                 ds.l    1                ; offset: $4 (4)        ;  Priority of this job plus "is it on hold?" 
  150. timeToPrint                 ds.l    1                ; offset: $8 (8)        ;  When to print job, if scheduled 
  151. jobTimeout                 ds.l    1                ; offset: $C (12)        ;  Timeout value, in ticks 
  152. firstPageToPrint         ds.l    1                ; offset: $10 (16)        ;  Start printing from this page 
  153. jobAlert                 ds.w    1                ; offset: $14 (20)        ;  How to alert user when printing 
  154. appName                     ds        Str31            ; offset: $16 (22)        ;  Which application printed the document 
  155. documentName             ds        Str31            ; offset: $36 (54)        ;  The name of the document being printed 
  156. userName                 ds        Str31            ; offset: $56 (86)        ;  The owner name of the machine that printed the document 
  157. sizeof                     EQU *                    ; size:   $76 (118)
  158.                         ENDR
  159. ;  gxPDDDefaultSettingTag COLLECTION ITEM 
  160.  
  161. gxPDDDefaultSettingTag            EQU        'pdds'
  162. gxPDDDefaultSettingInfo    RECORD 0
  163. useDefaultSetting         ds.b    1                ; offset: $0 (0)        ;  true if PDD default setting should be used 
  164. pad                         ds.b    1                ; offset: $1 (1)
  165. sizeof                     EQU *                    ; size:   $2 (2)
  166.                         ENDR
  167. ;  priority field constants 
  168.  
  169. gxPrintJobHoldingBit            EQU        $00001000            ; This bit is set if the job is on hold. 
  170.  
  171. gxPrintJobUrgent                EQU        $00000001
  172. gxPrintJobAtTime                EQU        $00000002
  173. gxPrintJobASAP                    EQU        $00000003
  174. gxPrintJobHolding                EQU        $00001003
  175. gxPrintJobHoldingAtTime            EQU        $00001002
  176. gxPrintJobHoldingUrgent            EQU        $00001001
  177. ;  jobAlert field constants 
  178.  
  179. gxNoPrintTimeAlert                EQU        0                    ; Don't alert user when we print 
  180. gxAlertBefore                    EQU        1                    ; Alert user before we print 
  181. gxAlertAfter                    EQU        2                    ; Alert user after we print 
  182. gxAlertBothTimes                EQU        3                    ; Alert before and after we print 
  183. ;  jobTimeout field constants 
  184.  
  185. gxThirtySeconds                    EQU        1800                ; 30 seconds in ticks 
  186. gxTwoMinutes                    EQU        7200                ; 2 minutes in ticks 
  187.  
  188. ;  gxCollationTag COLLECTION ITEM 
  189.  
  190. gxCollationTag                    EQU        'sort'
  191. gxCollationInfo            RECORD 0
  192. collation                 ds.b    1                ; offset: $0 (0)        ;  True if copies are to be collated 
  193. padByte                     ds.b    1                ; offset: $1 (1)
  194. sizeof                     EQU *                    ; size:   $2 (2)
  195.                         ENDR
  196.  
  197. ;  gxCopiesTag COLLECTION ITEM 
  198.  
  199. gxCopiesTag                        EQU        'copy'
  200. gxCopiesInfo            RECORD 0
  201. copies                     ds.l    1                ; offset: $0 (0)        ;  Number of copies of the document to print 
  202. sizeof                     EQU *                    ; size:   $4 (4)
  203.                         ENDR
  204.  
  205. ;  gxPageRangeTag COLLECTION ITEM 
  206.  
  207. gxPageRangeTag                    EQU        'rang'
  208. gxSimplePageRangeInfo    RECORD 0
  209. optionChosen             ds.b    1                ; offset: $0 (0)        ;  From options listed below 
  210. printAll                 ds.b    1                ; offset: $1 (1)        ;  True if user wants to print all pages 
  211. fromPage                 ds.l    1                ; offset: $2 (2)        ;  For gxDefaultPageRange, current value 
  212. toPage                     ds.l    1                ; offset: $6 (6)        ;  For gxDefaultPageRange, current value 
  213. sizeof                     EQU *                    ; size:   $A (10)
  214.                         ENDR
  215. gxPageRangeInfo            RECORD 0
  216. simpleRange                 ds        gxSimplePageRangeInfo ; offset: $0 (0) ;  Info which will be returned for GetJobPageRange 
  217. fromString                 ds        Str31            ; offset: $A (10)        ;  For gxCustomizePageRange, current value 
  218. toString                 ds        Str31            ; offset: $2A (42)        ;  For gxCustomizePageRange, current value 
  219. minFromPage                 ds.l    1                ; offset: $4A (74)        ;  For gxDefaultPageRange, we parse with this, ignored if nil 
  220. maxToPage                 ds.l    1                ; offset: $4E (78)        ;  For gxDefaultPageRange, we parse with this, ignored if nil 
  221. replaceString             ds.b    1                ; offset: $52 (82) <-- really an array of length one ;  For gxReplacePageRange, string to display 
  222.                          ORG 84
  223. sizeof                     EQU *                    ; size:   $54 (84)
  224.                         ENDR
  225.  
  226. ;  optionChosen field constants for SimplePageRangeInfo 
  227.  
  228. gxDefaultPageRange                EQU        0
  229. gxReplacePageRange                EQU        1
  230. gxCustomizePageRange            EQU        2
  231.  
  232. ;  gxQualityTag COLLECTION ITEM 
  233.  
  234. gxQualityTag                    EQU        'qual'
  235. gxQualityInfo            RECORD 0
  236. disableQuality             ds.b    1                ; offset: $0 (0)        ;  True to disable standard quality controls 
  237. padByte                     ds.b    1                ; offset: $1 (1)
  238. defaultQuality             ds.w    1                ; offset: $2 (2)        ;  The default quality value 
  239. currentQuality             ds.w    1                ; offset: $4 (4)        ;  The current quality value 
  240. qualityCount             ds.w    1                ; offset: $6 (6)        ;  The number of quality menu items in popup menu 
  241. qualityNames             ds.b    1                ; offset: $8 (8) <-- really an array of length one ;  An array of packed pascal strings for popup menu titles 
  242.                          ORG 10
  243. sizeof                     EQU *                    ; size:   $A (10)
  244.                         ENDR
  245.  
  246. ;  gxFileDestinationTag COLLECTION ITEM 
  247.  
  248. gxFileDestinationTag            EQU        'dest'
  249. gxFileDestinationInfo    RECORD 0
  250. toFile                     ds.b    1                ; offset: $0 (0)        ;  True if destination is a file 
  251. padByte                     ds.b    1                ; offset: $1 (1)
  252. sizeof                     EQU *                    ; size:   $2 (2)
  253.                         ENDR
  254.  
  255. ;  gxFileLocationTag COLLECTION ITEM 
  256.  
  257. gxFileLocationTag                EQU        'floc'
  258. gxFileLocationInfo        RECORD 0
  259. fileSpec                 ds        FSSpec            ; offset: $0 (0)        ;  Location to put file, if destination is file 
  260. sizeof                     EQU *                    ; size:   $46 (70)
  261.                         ENDR
  262.  
  263. ;  gxFileFormatTag COLLECTION ITEM 
  264.  
  265. gxFileFormatTag                    EQU        'ffmt'
  266. gxFileFormatInfo        RECORD 0
  267. fileFormatName             ds        Str31            ; offset: $0 (0)        ;  Name of file format (e.g. "PostScript") if destination is file 
  268. sizeof                     EQU *                    ; size:   $20 (32)
  269.                         ENDR
  270.  
  271. ;  gxFileFontsTag COLLECTION ITEM 
  272.  
  273. gxFileFontsTag                    EQU        'incf'
  274. gxFileFontsInfo            RECORD 0
  275. includeFonts             ds.b    1                ; offset: $0 (0)        ;  Which fonts to include, if destination is file 
  276. padByte                     ds.b    1                ; offset: $1 (1)
  277. sizeof                     EQU *                    ; size:   $2 (2)
  278.                         ENDR
  279. ;  includeFonts field constants 
  280.  
  281. gxIncludeNoFonts                EQU        1                    ; Include no fonts 
  282. gxIncludeAllFonts                EQU        2                    ; Include all fonts 
  283. gxIncludeNonStandardFonts        EQU        3                    ; Include only fonts that aren't in the standard LW set 
  284.  
  285. ;  gxPaperFeedTag COLLECTION ITEM 
  286.  
  287. gxPaperFeedTag                    EQU        'feed'
  288. gxPaperFeedInfo            RECORD 0
  289. autoFeed                 ds.b    1                ; offset: $0 (0)        ;  True if automatic feed, false if manual 
  290. padByte                     ds.b    1                ; offset: $1 (1)
  291. sizeof                     EQU *                    ; size:   $2 (2)
  292.                         ENDR
  293.  
  294. ;  gxTrayFeedTag COLLECTION ITEM 
  295.  
  296. gxTrayFeedTag                    EQU        'tray'
  297. ; typedef long                             gxTrayIndex
  298.  
  299. gxTrayFeedInfo            RECORD 0
  300. feedTrayIndex             ds.l    1                ; offset: $0 (0)        ;  Tray to feed paper from 
  301. manualFeedThisPage         ds.b    1                ; offset: $4 (4)        ;  Signals manual feeding for the page 
  302. padByte                     ds.b    1                ; offset: $5 (5)
  303. sizeof                     EQU *                    ; size:   $6 (6)
  304.                         ENDR
  305.  
  306. ;  gxManualFeedTag COLLECTION ITEM 
  307.  
  308. gxManualFeedTag                    EQU        'manf'
  309. gxManualFeedInfo        RECORD 0
  310. numPaperTypeNames         ds.l    1                ; offset: $0 (0)        ;  Number of paperTypes to manually feed 
  311. paperTypeNames             ds        Str31            ; offset: $4 (4) <-- really an array of length one ;  Array of names of paperTypes to manually feed 
  312. sizeof                     EQU *                    ; size:   $24 (36)
  313.                         ENDR
  314.  
  315. ;  gxNormalMappingTag COLLECTION ITEM 
  316.  
  317. gxNormalMappingTag                EQU        'nmap'
  318. gxNormalMappingInfo        RECORD 0
  319. normalPaperMapping         ds.b    1                ; offset: $0 (0)        ;  True if not overriding normal paper mapping 
  320. padByte                     ds.b    1                ; offset: $1 (1)
  321. sizeof                     EQU *                    ; size:   $2 (2)
  322.                         ENDR
  323.  
  324. ;  gxSpecialMappingTag COLLECTION ITEM 
  325.  
  326. gxSpecialMappingTag                EQU        'smap'
  327. gxSpecialMappingInfo    RECORD 0
  328. specialMapping             ds.b    1                ; offset: $0 (0)        ;  Enumerated redirect, scale or tile setting 
  329. padByte                     ds.b    1                ; offset: $1 (1)
  330. sizeof                     EQU *                    ; size:   $2 (2)
  331.                         ENDR
  332. ;  specialMapping field constants 
  333.  
  334. gxRedirectPages                    EQU        1                    ; Redirect pages to a papertype and clip if necessary 
  335. gxScalePages                    EQU        2                    ; Scale pages if necessary 
  336. gxTilePages                        EQU        3                    ; Tile pages if necessary 
  337.  
  338. ;  gxTrayMappingTag COLLECTION ITEM 
  339.  
  340. gxTrayMappingTag                EQU        'tmap'
  341. gxTrayMappingInfo        RECORD 0
  342. mapPaperToTray             ds.l    1                ; offset: $0 (0)        ;  Tray to map all paper to 
  343. sizeof                     EQU *                    ; size:   $4 (4)
  344.                         ENDR
  345.  
  346. ;  gxPaperMappingTag COLLECTION ITEM 
  347. ;  This collection item contains a flattened paper type resource 
  348.  
  349. gxPaperMappingTag                EQU        'pmap'
  350.  
  351. ;  gxPrintPanelTag COLLECTION ITEM 
  352.  
  353. gxPrintPanelTag                    EQU        'ppan'
  354. gxPrintPanelInfo        RECORD 0
  355. startPanelName             ds        Str31            ; offset: $0 (0)        ;  Name of starting panel in Print dialog 
  356. sizeof                     EQU *                    ; size:   $20 (32)
  357.                         ENDR
  358.  
  359. ;  gxFormatPanelTag COLLECTION ITEM 
  360.  
  361. gxFormatPanelTag                EQU        'fpan'
  362. gxFormatPanelInfo        RECORD 0
  363. startPanelName             ds        Str31            ; offset: $0 (0)        ;  Name of starting panel in Format dialog 
  364. sizeof                     EQU *                    ; size:   $20 (32)
  365.                         ENDR
  366.  
  367. ;  gxTranslatedDocumentTag COLLECTION ITEM 
  368.  
  369. gxTranslatedDocumentTag            EQU        'trns'
  370. gxTranslatedDocumentInfo RECORD 0
  371. translatorInfo             ds.l    1                ; offset: $0 (0)        ;  Information from the translation process 
  372. sizeof                     EQU *                    ; size:   $4 (4)
  373.                         ENDR
  374.  
  375. ;  gxCoverPageTag COLLECTION ITEM 
  376.  
  377. gxCoverPageTag                    EQU        'cvpg'
  378.  
  379. gxCoverPageInfo            RECORD 0
  380. coverPage                 ds.l    1                ; offset: $0 (0)        ;  Use same enum values as for PrintRecord field in GXPrinterDrivers.h 
  381. sizeof                     EQU *                    ; size:   $4 (4)
  382.                         ENDR
  383. ;
  384. ;    >>>>>> FORMAT COLLECTION ITEMS <<<<<<
  385. ;
  386. ;
  387.  
  388. ;  gxPaperTypeLockTag COLLECTION ITEM 
  389.  
  390. gxPaperTypeLockTag                EQU        'ptlk'
  391. gxPaperTypeLockInfo        RECORD 0
  392. paperTypeLocked             ds.b    1                ; offset: $0 (0)        ;  True if format's paperType is locked 
  393. padByte                     ds.b    1                ; offset: $1 (1)
  394. sizeof                     EQU *                    ; size:   $2 (2)
  395.                         ENDR
  396.  
  397. ;  gxOrientationTag COLLECTION ITEM 
  398.  
  399. gxOrientationTag                EQU        'layo'
  400. gxOrientationInfo        RECORD 0
  401. orientation                 ds.b    1                ; offset: $0 (0)        ;  An enumerated orientation value 
  402. padByte                     ds.b    1                ; offset: $1 (1)
  403. sizeof                     EQU *                    ; size:   $2 (2)
  404.                         ENDR
  405. ;  orientation field constants 
  406.  
  407. gxPortraitLayout                EQU        0                    ; Portrait 
  408. gxLandscapeLayout                EQU        1                    ; Landscape 
  409. gxRotatedPortraitLayout            EQU        2                    ; Portrait, rotated 180° 
  410. gxRotatedLandscapeLayout        EQU        3                    ; Landscape, rotated 180°  
  411.  
  412. ;  gxScalingTag COLLECTION ITEM 
  413.  
  414. gxScalingTag                    EQU        'scal'
  415. gxScalingInfo            RECORD 0
  416. horizontalScaleFactor     ds.l    1                ; offset: $0 (0)        ;  Current horizontal scaling factor 
  417. verticalScaleFactor         ds.l    1                ; offset: $4 (4)        ;  Current vertical scaling factor 
  418. minScaling                 ds.w    1                ; offset: $8 (8)        ;  Minimum scaling allowed 
  419. maxScaling                 ds.w    1                ; offset: $A (10)        ;  Maximum scaling allowed 
  420. sizeof                     EQU *                    ; size:   $C (12)
  421.                         ENDR
  422.  
  423. ;  gxDirectModeTag COLLECTION ITEM 
  424.  
  425. gxDirectModeTag                    EQU        'dirm'
  426. gxDirectModeInfo        RECORD 0
  427. directModeOn             ds.b    1                ; offset: $0 (0)        ;  True if a direct mode is enabled 
  428. padByte                     ds.b    1                ; offset: $1 (1)
  429. sizeof                     EQU *                    ; size:   $2 (2)
  430.                         ENDR
  431.  
  432. ;  gxFormatHalftoneTag COLLECTION ITEM 
  433.  
  434. gxFormatHalftoneTag                EQU        'half'
  435. gxFormatHalftoneInfo    RECORD 0
  436. numHalftones             ds.l    1                ; offset: $0 (0)        ;  Number of halftone records 
  437. halftones                 ds        gxHalftone        ; offset: $4 (4) <-- really an array of length one ;  The halftone records 
  438. sizeof                     EQU *                    ; size:   $38 (56)
  439.                         ENDR
  440.  
  441. ;  gxInvertPageTag COLLECTION ITEM 
  442.  
  443. gxInvertPageTag                    EQU        'invp'
  444. gxInvertPageInfo        RECORD 0
  445. padByte                     ds.b    1                ; offset: $0 (0)
  446. invert                     ds.b    1                ; offset: $1 (1)        ;  If true, invert page 
  447. sizeof                     EQU *                    ; size:   $2 (2)
  448.                         ENDR
  449.  
  450. ;  gxFlipPageHorizontalTag COLLECTION ITEM 
  451.  
  452. gxFlipPageHorizontalTag            EQU        'flph'
  453. gxFlipPageHorizontalInfo RECORD 0
  454. padByte                     ds.b    1                ; offset: $0 (0)
  455. flipHorizontal             ds.b    1                ; offset: $1 (1)        ;  If true, flip x coordinates on page 
  456. sizeof                     EQU *                    ; size:   $2 (2)
  457.                         ENDR
  458.  
  459. ;  gxFlipPageVerticalTag COLLECTION ITEM 
  460.  
  461. gxFlipPageVerticalTag            EQU        'flpv'
  462. gxFlipPageVerticalInfo    RECORD 0
  463. padByte                     ds.b    1                ; offset: $0 (0)
  464. flipVertical             ds.b    1                ; offset: $1 (1)        ;  If true, flip y coordinates on page 
  465. sizeof                     EQU *                    ; size:   $2 (2)
  466.                         ENDR
  467.  
  468. ;  gxPreciseBitmapsTag COLLECTION ITEM 
  469.  
  470. gxPreciseBitmapsTag                EQU        'pbmp'
  471. gxPreciseBitmapInfo        RECORD 0
  472. preciseBitmaps             ds.b    1                ; offset: $0 (0)        ;  If true, scale page by 96% 
  473. padByte                     ds.b    1                ; offset: $1 (1)
  474. sizeof                     EQU *                    ; size:   $2 (2)
  475.                         ENDR
  476.  
  477. ;
  478. ;    >>>>>> PAPERTYPE COLLECTION ITEMS <<<<<<
  479. ;
  480. ;
  481.  
  482. ;  gxBaseTag COLLECTION ITEM 
  483.  
  484. gxBaseTag                        EQU        'base'
  485. gxBaseInfo                RECORD 0
  486. baseType                 ds.l    1                ; offset: $0 (0)        ;  PaperType's base type 
  487. sizeof                     EQU *                    ; size:   $4 (4)
  488.                         ENDR
  489. ;  baseType field constants 
  490.  
  491. gxUnknownBase                    EQU        0                    ; Base paper type from which this paper type is 
  492. gxUSLetterBase                    EQU        1                    ; derived.  This is not a complete set. 
  493. gxUSLegalBase                    EQU        2
  494. gxA4LetterBase                    EQU        3
  495. gxB5LetterBase                    EQU        4
  496. gxTabloidBase                    EQU        5
  497.  
  498. ;  gxCreatorTag COLLECTION ITEM 
  499.  
  500. gxCreatorTag                    EQU        'crea'
  501. gxCreatorInfo            RECORD 0
  502. creator                     ds.l    1                ; offset: $0 (0)        ;  PaperType's creator 
  503. sizeof                     EQU *                    ; size:   $4 (4)
  504.                         ENDR
  505. ;  gxUnitsTag COLLECTION ITEM 
  506.  
  507. gxUnitsTag                        EQU        'unit'
  508. gxUnitsInfo                RECORD 0
  509. units                     ds.b    1                ; offset: $0 (0)        ;  PaperType's units (used by PaperType Editor). 
  510. padByte                     ds.b    1                ; offset: $1 (1)
  511. sizeof                     EQU *                    ; size:   $2 (2)
  512.                         ENDR
  513. ;  units field constants 
  514.  
  515. gxPicas                            EQU        0                    ; Pica measurement 
  516. gxMMs                            EQU        1                    ; Millimeter measurement 
  517. gxInches                        EQU        2                    ; Inches measurement 
  518.  
  519. ;  gxFlagsTag COLLECTION ITEM 
  520.  
  521. gxFlagsTag                        EQU        'flag'
  522. gxFlagsInfo                RECORD 0
  523. flags                     ds.l    1                ; offset: $0 (0)        ;  PaperType's flags 
  524. sizeof                     EQU *                    ; size:   $4 (4)
  525.                         ENDR
  526. ;  flags field constants 
  527.  
  528. gxOldPaperTypeFlag                EQU        $00800000            ; Indicates a paper type for compatibility printing 
  529. gxNewPaperTypeFlag                EQU        $00400000            ; Indicates a paper type for QuickDraw GX-aware printing 
  530. gxOldAndNewFlag                    EQU        $00C00000            ; Indicates a paper type that's both old and new 
  531. gxDefaultPaperTypeFlag            EQU        $00100000            ; Indicates the default paper type in the group 
  532.  
  533. ;  gxCommentTag COLLECTION ITEM 
  534.  
  535. gxCommentTag                    EQU        'cmnt'
  536. gxCommentInfo            RECORD 0
  537. comment                     ds        Str255            ; offset: $0 (0)        ;  PaperType's comment 
  538. sizeof                     EQU *                    ; size:   $100 (256)
  539.                         ENDR
  540.  
  541. ;
  542. ;    >>>>>> PRINTER VIEWDEVICE TAGS <<<<<<
  543. ;
  544. ;
  545.  
  546. ;  gxPenTableTag COLLECTION ITEM 
  547.  
  548. gxPenTableTag                    EQU        'pent'
  549. gxPenTableEntry            RECORD 0
  550. penName                     ds        Str31            ; offset: $0 (0)        ;  Name of the pen 
  551. penColor                 ds        gxColor            ; offset: $20 (32)        ;  Color to use from the color set 
  552. penThickness             ds.l    1                ; offset: $30 (48)        ;  Size of the pen 
  553. penUnits                 ds.w    1                ; offset: $34 (52)        ;  Specifies units in which pen thickness is defined 
  554. penPosition                 ds.w    1                ; offset: $36 (54)        ;  Pen position in the carousel, -1 (kPenNotLoaded) if not loaded 
  555. sizeof                     EQU *                    ; size:   $38 (56)
  556.                         ENDR
  557. gxPenTable                RECORD 0
  558. numPens                     ds.l    1                ; offset: $0 (0)        ;  Number of pen entries in the following array 
  559. pens                     ds        gxPenTableEntry ; offset: $4 (4) <-- really an array of length one ;  Array of pen entries 
  560. sizeof                     EQU *                    ; size:   $3C (60)
  561.                         ENDR
  562. ; typedef struct gxPenTable *            gxPenTablePtr
  563.  
  564. ; typedef gxPenTablePtr *                gxPenTableHdl
  565.  
  566. ;  penUnits field constants 
  567.  
  568. gxDeviceUnits                    EQU        0
  569. gxMMUnits                        EQU        1
  570. gxInchesUnits                    EQU        2
  571. ;  penPosition field constants 
  572.  
  573. gxPenNotLoaded                    EQU        -1
  574.  
  575. ;
  576. ;    >>>>>> DIALOG-RELATED CONSTANTS AND TYPES <<<<<<
  577. ;
  578. ;
  579.  
  580. ; typedef long                             gxDialogResult
  581.  
  582.  
  583. gxCancelSelected                EQU        0
  584. gxOKSelected                    EQU        1
  585. gxRevertSelected                EQU        2
  586.  
  587. gxEditMenuRecord        RECORD 0
  588. editMenuID                 ds.w    1                ; offset: $0 (0)
  589. cutItem                     ds.w    1                ; offset: $2 (2)
  590. copyItem                 ds.w    1                ; offset: $4 (4)
  591. pasteItem                 ds.w    1                ; offset: $6 (6)
  592. clearItem                 ds.w    1                ; offset: $8 (8)
  593. undoItem                 ds.w    1                ; offset: $A (10)
  594. sizeof                     EQU *                    ; size:   $C (12)
  595.                         ENDR
  596.  
  597. ;
  598. ;    >>>>>> JOB FORMAT MODE CONSTANTS AND TYPES <<<<<<
  599. ;
  600. ;
  601.  
  602. ; typedef OSType                         gxJobFormatMode
  603.  
  604. gxJobFormatModeTable    RECORD 0
  605. numModes                 ds.l    1                ; offset: $0 (0)        ;  Number of job format modes to choose from 
  606. modes                     ds.l    1                ; offset: $4 (4) <-- really an array of length one ;  The job format modes 
  607. sizeof                     EQU *                    ; size:   $8 (8)
  608.                         ENDR
  609. ; typedef struct gxJobFormatModeTable *    gxJobFormatModeTablePtr
  610.  
  611. ; typedef gxJobFormatModeTablePtr *        gxJobFormatModeTableHdl
  612.  
  613.  
  614. gxGraphicsJobFormatMode            EQU        'grph'
  615. gxTextJobFormatMode                EQU        'text'
  616. gxPostScriptJobFormatMode        EQU        'post'
  617. ; typedef long                             gxQueryType
  618.  
  619.  
  620. gxGetJobFormatLineConstraintQuery EQU    0
  621. gxGetJobFormatFontsQuery        EQU        1
  622. gxGetJobFormatFontCommonStylesQuery EQU    2
  623. gxGetJobFormatFontConstraintQuery EQU    3
  624. gxSetStyleJobFormatCommonStyleQuery EQU    4
  625.  
  626. ;  Structures used for Text mode field constants 
  627. gxPositionConstraintTable RECORD 0
  628. phase                     ds        gxPoint            ; offset: $0 (0)        ;  Position phase 
  629. offset                     ds        gxPoint            ; offset: $8 (8)        ;  Position offset 
  630. numSizes                 ds.l    1                ; offset: $10 (16)        ;  Number of available font sizes 
  631. sizes                     ds.l    1                ; offset: $14 (20) <-- really an array of length one ;  The available font sizes 
  632. sizeof                     EQU *                    ; size:   $18 (24)
  633.                         ENDR
  634. ; typedef struct gxPositionConstraintTable * gxPositionConstraintTablePtr
  635.  
  636. ; typedef gxPositionConstraintTablePtr * gxPositionConstraintTableHdl
  637.  
  638. ;  numSizes field constants 
  639.  
  640. gxConstraintRange                EQU        -1
  641. gxStyleNameTable        RECORD 0
  642. numStyleNames             ds.l    1                ; offset: $0 (0)        ;  Number of style names 
  643. styleNames                 ds        Str255            ; offset: $4 (4) <-- really an array of length one ;  The style names 
  644. sizeof                     EQU *                    ; size:   $104 (260)
  645.                         ENDR
  646. ; typedef struct gxStyleNameTable *        gxStyleNameTablePtr
  647.  
  648. ; typedef gxStyleNameTablePtr *            gxStyleNameTableHdl
  649.  
  650. gxFontTable                RECORD 0
  651. numFonts                 ds.l    1                ; offset: $0 (0)        ;  Number of font references 
  652. fonts                     ds.l    1                ; offset: $4 (4) <-- really an array of length one ;  The font references 
  653. sizeof                     EQU *                    ; size:   $8 (8)
  654.                         ENDR
  655. ; typedef struct gxFontTable *            gxFontTablePtr
  656.  
  657. ; typedef gxFontTablePtr *                gxFontTableHdl
  658.  
  659. ;  ------------------------------------------------------------------------------
  660. ;
  661. ;                                Printing Manager API Functions
  662. ;
  663. ;-------------------------------------------------------------------------------- 
  664.  
  665. ;    Global Routines
  666. ;
  667.  
  668. ;
  669. ; pascal OSErr GXInitPrinting(void )
  670. ;
  671.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  672.         Macro
  673.         _GXInitPrinting
  674.             move.l              #$00000000,D0
  675.             dc.w                $ABFE
  676.         EndM
  677.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  678.         IMPORT_CFM_FUNCTION GXInitPrinting
  679.     ENDIF
  680.  
  681. ;
  682. ; pascal OSErr GXExitPrinting(void )
  683. ;
  684.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  685.         Macro
  686.         _GXExitPrinting
  687.             move.l              #$00000001,D0
  688.             dc.w                $ABFE
  689.         EndM
  690.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  691.         IMPORT_CFM_FUNCTION GXExitPrinting
  692.     ENDIF
  693.  
  694.  
  695. ;    Error-Handling Routines
  696. ;
  697.  
  698. ;
  699. ; pascal OSErr GXGetJobError(gxJob aJob)
  700. ;
  701.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  702.         Macro
  703.         _GXGetJobError
  704.             move.l              #$0000000E,D0
  705.             dc.w                $ABFE
  706.         EndM
  707.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  708.         IMPORT_CFM_FUNCTION GXGetJobError
  709.     ENDIF
  710.  
  711. ;
  712. ; pascal void GXSetJobError(gxJob aJob, OSErr anErr)
  713. ;
  714.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  715.         Macro
  716.         _GXSetJobError
  717.             move.l              #$0000000F,D0
  718.             dc.w                $ABFE
  719.         EndM
  720.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  721.         IMPORT_CFM_FUNCTION GXSetJobError
  722.     ENDIF
  723.  
  724.  
  725. ;    Job Routines
  726. ;
  727.  
  728. ;
  729. ; pascal OSErr GXNewJob(gxJob *aJob)
  730. ;
  731.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  732.         Macro
  733.         _GXNewJob
  734.             move.l              #$00000002,D0
  735.             dc.w                $ABFE
  736.         EndM
  737.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  738.         IMPORT_CFM_FUNCTION GXNewJob
  739.     ENDIF
  740.  
  741. ;
  742. ; pascal OSErr GXDisposeJob(gxJob aJob)
  743. ;
  744.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  745.         Macro
  746.         _GXDisposeJob
  747.             move.l              #$00000003,D0
  748.             dc.w                $ABFE
  749.         EndM
  750.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  751.         IMPORT_CFM_FUNCTION GXDisposeJob
  752.     ENDIF
  753.  
  754. ;
  755. ; pascal void GXFlattenJob(gxJob aJob, GXPrintingFlattenUPP flattenProc, void *aVoid)
  756. ;
  757.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  758.         Macro
  759.         _GXFlattenJob
  760.             move.l              #$00000004,D0
  761.             dc.w                $ABFE
  762.         EndM
  763.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  764.         IMPORT_CFM_FUNCTION GXFlattenJob
  765.     ENDIF
  766.  
  767. ;
  768. ; pascal gxJob GXUnflattenJob(gxJob aJob, GXPrintingFlattenUPP flattenProc, void *aVoid)
  769. ;
  770.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  771.         Macro
  772.         _GXUnflattenJob
  773.             move.l              #$00000005,D0
  774.             dc.w                $ABFE
  775.         EndM
  776.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  777.         IMPORT_CFM_FUNCTION GXUnflattenJob
  778.     ENDIF
  779.  
  780. ;
  781. ; pascal Handle GXFlattenJobToHdl(gxJob aJob, Handle aHdl)
  782. ;
  783.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  784.         Macro
  785.         _GXFlattenJobToHdl
  786.             move.l              #$00000006,D0
  787.             dc.w                $ABFE
  788.         EndM
  789.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  790.         IMPORT_CFM_FUNCTION GXFlattenJobToHdl
  791.     ENDIF
  792.  
  793. ;
  794. ; pascal gxJob GXUnflattenJobFromHdl(gxJob aJob, Handle aHdl)
  795. ;
  796.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  797.         Macro
  798.         _GXUnflattenJobFromHdl
  799.             move.l              #$00000007,D0
  800.             dc.w                $ABFE
  801.         EndM
  802.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  803.         IMPORT_CFM_FUNCTION GXUnflattenJobFromHdl
  804.     ENDIF
  805.  
  806. ;
  807. ; pascal void GXInstallApplicationOverride(gxJob aJob, short messageID, void *override)
  808. ;
  809.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  810.         Macro
  811.         _GXInstallApplicationOverride
  812.             move.l              #$00000008,D0
  813.             dc.w                $ABFE
  814.         EndM
  815.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  816.         IMPORT_CFM_FUNCTION GXInstallApplicationOverride
  817.     ENDIF
  818.  
  819. ;
  820. ; pascal Collection GXGetJobCollection(gxJob aJob)
  821. ;
  822.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  823.         Macro
  824.         _GXGetJobCollection
  825.             move.l              #$0000001D,D0
  826.             dc.w                $ABFE
  827.         EndM
  828.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  829.         IMPORT_CFM_FUNCTION GXGetJobCollection
  830.     ENDIF
  831.  
  832. ;
  833. ; pascal void *GXGetJobRefCon(gxJob aJob)
  834. ;
  835.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  836.         Macro
  837.         _GXGetJobRefCon
  838.             move.l              #$0000001E,D0
  839.             dc.w                $ABFE
  840.         EndM
  841.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  842.         IMPORT_CFM_FUNCTION GXGetJobRefCon
  843.     ENDIF
  844.  
  845. ;
  846. ; pascal void GXSetJobRefCon(gxJob aJob, void *refCon)
  847. ;
  848.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  849.         Macro
  850.         _GXSetJobRefCon
  851.             move.l              #$0000001F,D0
  852.             dc.w                $ABFE
  853.         EndM
  854.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  855.         IMPORT_CFM_FUNCTION GXSetJobRefCon
  856.     ENDIF
  857.  
  858. ;
  859. ; pascal gxJob GXCopyJob(gxJob srcJob, gxJob dstJob)
  860. ;
  861.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  862.         Macro
  863.         _GXCopyJob
  864.             move.l              #$00000020,D0
  865.             dc.w                $ABFE
  866.         EndM
  867.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  868.         IMPORT_CFM_FUNCTION GXCopyJob
  869.     ENDIF
  870.  
  871. ;
  872. ; pascal void GXSelectJobFormattingPrinter(gxJob aJob, Str31 printerName)
  873. ;
  874.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  875.         Macro
  876.         _GXSelectJobFormattingPrinter
  877.             move.l              #$00000021,D0
  878.             dc.w                $ABFE
  879.         EndM
  880.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  881.         IMPORT_CFM_FUNCTION GXSelectJobFormattingPrinter
  882.     ENDIF
  883.  
  884. ;
  885. ; pascal void GXSelectJobOutputPrinter(gxJob aJob, Str31 printerName)
  886. ;
  887.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  888.         Macro
  889.         _GXSelectJobOutputPrinter
  890.             move.l              #$00000022,D0
  891.             dc.w                $ABFE
  892.         EndM
  893.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  894.         IMPORT_CFM_FUNCTION GXSelectJobOutputPrinter
  895.     ENDIF
  896.  
  897. ;
  898. ; pascal void GXForEachJobFormatDo(gxJob aJob, GXFormatUPP formatProc, void *refCon)
  899. ;
  900.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  901.         Macro
  902.         _GXForEachJobFormatDo
  903.             move.l              #$00000023,D0
  904.             dc.w                $ABFE
  905.         EndM
  906.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  907.         IMPORT_CFM_FUNCTION GXForEachJobFormatDo
  908.     ENDIF
  909.  
  910. ;
  911. ; pascal long GXCountJobFormats(gxJob aJob)
  912. ;
  913.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  914.         Macro
  915.         _GXCountJobFormats
  916.             move.l              #$00000024,D0
  917.             dc.w                $ABFE
  918.         EndM
  919.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  920.         IMPORT_CFM_FUNCTION GXCountJobFormats
  921.     ENDIF
  922.  
  923. ;
  924. ; pascal Boolean GXUpdateJob(gxJob aJob)
  925. ;
  926.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  927.         Macro
  928.         _GXUpdateJob
  929.             move.l              #$00000025,D0
  930.             dc.w                $ABFE
  931.         EndM
  932.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  933.         IMPORT_CFM_FUNCTION GXUpdateJob
  934.     ENDIF
  935.  
  936. ;
  937. ; pascal void GXConvertPrintRecord(gxJob aJob, THPrint hPrint)
  938. ;
  939.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  940.         Macro
  941.         _GXConvertPrintRecord
  942.             move.l              #$00000026,D0
  943.             dc.w                $ABFE
  944.         EndM
  945.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  946.         IMPORT_CFM_FUNCTION GXConvertPrintRecord
  947.     ENDIF
  948.  
  949. ;
  950. ; pascal void GXIdleJob(gxJob aJob)
  951. ;
  952.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  953.         Macro
  954.         _GXIdleJob
  955.             move.l              #$00000057,D0
  956.             dc.w                $ABFE
  957.         EndM
  958.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  959.         IMPORT_CFM_FUNCTION GXIdleJob
  960.     ENDIF
  961.  
  962.  
  963. ;    Job Format Modes Routines
  964. ;
  965.  
  966. ;
  967. ; pascal void GXSetAvailableJobFormatModes(gxJob aJob, gxJobFormatModeTableHdl formatModeTable)
  968. ;
  969.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  970.         Macro
  971.         _GXSetAvailableJobFormatModes
  972.             move.l              #$0000003B,D0
  973.             dc.w                $ABFE
  974.         EndM
  975.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  976.         IMPORT_CFM_FUNCTION GXSetAvailableJobFormatModes
  977.     ENDIF
  978.  
  979. ;
  980. ; pascal gxJobFormatMode GXGetPreferredJobFormatMode(gxJob aJob, Boolean *directOnly)
  981. ;
  982.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  983.         Macro
  984.         _GXGetPreferredJobFormatMode
  985.             move.l              #$0000003C,D0
  986.             dc.w                $ABFE
  987.         EndM
  988.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  989.         IMPORT_CFM_FUNCTION GXGetPreferredJobFormatMode
  990.     ENDIF
  991.  
  992. ;
  993. ; pascal gxJobFormatMode GXGetJobFormatMode(gxJob aJob)
  994. ;
  995.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  996.         Macro
  997.         _GXGetJobFormatMode
  998.             move.l              #$0000003D,D0
  999.             dc.w                $ABFE
  1000.         EndM
  1001.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1002.         IMPORT_CFM_FUNCTION GXGetJobFormatMode
  1003.     ENDIF
  1004.  
  1005. ;
  1006. ; pascal void GXSetJobFormatMode(gxJob aJob, gxJobFormatMode formatMode)
  1007. ;
  1008.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1009.         Macro
  1010.         _GXSetJobFormatMode
  1011.             move.l              #$0000003E,D0
  1012.             dc.w                $ABFE
  1013.         EndM
  1014.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1015.         IMPORT_CFM_FUNCTION GXSetJobFormatMode
  1016.     ENDIF
  1017.  
  1018. ;
  1019. ; pascal void GXJobFormatModeQuery(gxJob aJob, gxQueryType aQueryType, void *srcData, void *dstData)
  1020. ;
  1021.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1022.         Macro
  1023.         _GXJobFormatModeQuery
  1024.             move.l              #$0000003F,D0
  1025.             dc.w                $ABFE
  1026.         EndM
  1027.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1028.         IMPORT_CFM_FUNCTION GXJobFormatModeQuery
  1029.     ENDIF
  1030.  
  1031.  
  1032. ;    Format Routines
  1033. ;
  1034.  
  1035. ;
  1036. ; pascal gxFormat GXNewFormat(gxJob aJob)
  1037. ;
  1038.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1039.         Macro
  1040.         _GXNewFormat
  1041.             move.l              #$00000009,D0
  1042.             dc.w                $ABFE
  1043.         EndM
  1044.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1045.         IMPORT_CFM_FUNCTION GXNewFormat
  1046.     ENDIF
  1047.  
  1048. ;
  1049. ; pascal void GXDisposeFormat(gxFormat aFormat)
  1050. ;
  1051.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1052.         Macro
  1053.         _GXDisposeFormat
  1054.             move.l              #$0000000A,D0
  1055.             dc.w                $ABFE
  1056.         EndM
  1057.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1058.         IMPORT_CFM_FUNCTION GXDisposeFormat
  1059.     ENDIF
  1060.  
  1061. ;
  1062. ; pascal gxFormat GXGetJobFormat(gxJob aJob, long whichFormat)
  1063. ;
  1064.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1065.         Macro
  1066.         _GXGetJobFormat
  1067.             move.l              #$00000013,D0
  1068.             dc.w                $ABFE
  1069.         EndM
  1070.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1071.         IMPORT_CFM_FUNCTION GXGetJobFormat
  1072.     ENDIF
  1073.  
  1074. ;
  1075. ; pascal gxJob GXGetFormatJob(gxFormat aFormat)
  1076. ;
  1077.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1078.         Macro
  1079.         _GXGetFormatJob
  1080.             move.l              #$00000014,D0
  1081.             dc.w                $ABFE
  1082.         EndM
  1083.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1084.         IMPORT_CFM_FUNCTION GXGetFormatJob
  1085.     ENDIF
  1086.  
  1087. ;
  1088. ; pascal gxPaperType GXGetFormatPaperType(gxFormat aFormat)
  1089. ;
  1090.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1091.         Macro
  1092.         _GXGetFormatPaperType
  1093.             move.l              #$00000015,D0
  1094.             dc.w                $ABFE
  1095.         EndM
  1096.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1097.         IMPORT_CFM_FUNCTION GXGetFormatPaperType
  1098.     ENDIF
  1099.  
  1100. ;
  1101. ; pascal void GXGetFormatDimensions(gxFormat aFormat, gxRectangle *pageSize, gxRectangle *paperSize)
  1102. ;
  1103.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1104.         Macro
  1105.         _GXGetFormatDimensions
  1106.             move.l              #$00000016,D0
  1107.             dc.w                $ABFE
  1108.         EndM
  1109.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1110.         IMPORT_CFM_FUNCTION GXGetFormatDimensions
  1111.     ENDIF
  1112.  
  1113. ;
  1114. ; pascal Collection GXGetFormatCollection(gxFormat aFormat)
  1115. ;
  1116.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1117.         Macro
  1118.         _GXGetFormatCollection
  1119.             move.l              #$00000033,D0
  1120.             dc.w                $ABFE
  1121.         EndM
  1122.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1123.         IMPORT_CFM_FUNCTION GXGetFormatCollection
  1124.     ENDIF
  1125.  
  1126. ;
  1127. ; pascal void GXChangedFormat(gxFormat aFormat)
  1128. ;
  1129.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1130.         Macro
  1131.         _GXChangedFormat
  1132.             move.l              #$00000034,D0
  1133.             dc.w                $ABFE
  1134.         EndM
  1135.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1136.         IMPORT_CFM_FUNCTION GXChangedFormat
  1137.     ENDIF
  1138.  
  1139. ;
  1140. ; pascal gxFormat GXCopyFormat(gxFormat srcFormat, gxFormat dstFormat)
  1141. ;
  1142.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1143.         Macro
  1144.         _GXCopyFormat
  1145.             move.l              #$00000035,D0
  1146.             dc.w                $ABFE
  1147.         EndM
  1148.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1149.         IMPORT_CFM_FUNCTION GXCopyFormat
  1150.     ENDIF
  1151.  
  1152. ;
  1153. ; pascal gxFormat GXCloneFormat(gxFormat aFormat)
  1154. ;
  1155.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1156.         Macro
  1157.         _GXCloneFormat
  1158.             move.l              #$00000036,D0
  1159.             dc.w                $ABFE
  1160.         EndM
  1161.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1162.         IMPORT_CFM_FUNCTION GXCloneFormat
  1163.     ENDIF
  1164.  
  1165. ;
  1166. ; pascal long GXCountFormatOwners(gxFormat aFormat)
  1167. ;
  1168.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1169.         Macro
  1170.         _GXCountFormatOwners
  1171.             move.l              #$00000037,D0
  1172.             dc.w                $ABFE
  1173.         EndM
  1174.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1175.         IMPORT_CFM_FUNCTION GXCountFormatOwners
  1176.     ENDIF
  1177.  
  1178. ;
  1179. ; pascal void GXGetFormatMapping(gxFormat aFormat, gxMapping *fmtMapping)
  1180. ;
  1181.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1182.         Macro
  1183.         _GXGetFormatMapping
  1184.             move.l              #$00000038,D0
  1185.             dc.w                $ABFE
  1186.         EndM
  1187.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1188.         IMPORT_CFM_FUNCTION GXGetFormatMapping
  1189.     ENDIF
  1190.  
  1191. ;
  1192. ; pascal gxShape GXGetFormatForm(gxFormat aFormat, gxShape *mask)
  1193. ;
  1194.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1195.         Macro
  1196.         _GXGetFormatForm
  1197.             move.l              #$00000039,D0
  1198.             dc.w                $ABFE
  1199.         EndM
  1200.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1201.         IMPORT_CFM_FUNCTION GXGetFormatForm
  1202.     ENDIF
  1203.  
  1204. ;
  1205. ; pascal void GXSetFormatForm(gxFormat aFormat, gxShape form, gxShape mask)
  1206. ;
  1207.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1208.         Macro
  1209.         _GXSetFormatForm
  1210.             move.l              #$0000003A,D0
  1211.             dc.w                $ABFE
  1212.         EndM
  1213.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1214.         IMPORT_CFM_FUNCTION GXSetFormatForm
  1215.     ENDIF
  1216.  
  1217.  
  1218. ;    PaperType Routines
  1219. ;
  1220.  
  1221. ;
  1222. ; pascal gxPaperType GXNewPaperType(gxJob aJob, Str31 name, gxRectangle *pageSize, gxRectangle *paperSize)
  1223. ;
  1224.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1225.         Macro
  1226.         _GXNewPaperType
  1227.             move.l              #$0000000B,D0
  1228.             dc.w                $ABFE
  1229.         EndM
  1230.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1231.         IMPORT_CFM_FUNCTION GXNewPaperType
  1232.     ENDIF
  1233.  
  1234. ;
  1235. ; pascal void GXDisposePaperType(gxPaperType aPaperType)
  1236. ;
  1237.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1238.         Macro
  1239.         _GXDisposePaperType
  1240.             move.l              #$0000000C,D0
  1241.             dc.w                $ABFE
  1242.         EndM
  1243.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1244.         IMPORT_CFM_FUNCTION GXDisposePaperType
  1245.     ENDIF
  1246.  
  1247. ;
  1248. ; pascal gxPaperType GXGetNewPaperType(gxJob aJob, short resID)
  1249. ;
  1250.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1251.         Macro
  1252.         _GXGetNewPaperType
  1253.             move.l              #$0000000D,D0
  1254.             dc.w                $ABFE
  1255.         EndM
  1256.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1257.         IMPORT_CFM_FUNCTION GXGetNewPaperType
  1258.     ENDIF
  1259.  
  1260. ;
  1261. ; pascal long GXCountJobPaperTypes(gxJob aJob, Boolean forFormatDevice)
  1262. ;
  1263.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1264.         Macro
  1265.         _GXCountJobPaperTypes
  1266.             move.l              #$00000042,D0
  1267.             dc.w                $ABFE
  1268.         EndM
  1269.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1270.         IMPORT_CFM_FUNCTION GXCountJobPaperTypes
  1271.     ENDIF
  1272.  
  1273. ;
  1274. ; pascal gxPaperType GXGetJobPaperType(gxJob aJob, long whichPaperType, Boolean forFormatDevice, gxPaperType aPaperType)
  1275. ;
  1276.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1277.         Macro
  1278.         _GXGetJobPaperType
  1279.             move.l              #$00000043,D0
  1280.             dc.w                $ABFE
  1281.         EndM
  1282.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1283.         IMPORT_CFM_FUNCTION GXGetJobPaperType
  1284.     ENDIF
  1285.  
  1286. ;
  1287. ; pascal void GXForEachJobPaperTypeDo(gxJob aJob, GXPaperTypeUPP aProc, void *refCon, Boolean forFormattingPrinter)
  1288. ;
  1289.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1290.         Macro
  1291.         _GXForEachJobPaperTypeDo
  1292.             move.l              #$00000044,D0
  1293.             dc.w                $ABFE
  1294.         EndM
  1295.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1296.         IMPORT_CFM_FUNCTION GXForEachJobPaperTypeDo
  1297.     ENDIF
  1298.  
  1299. ;
  1300. ; pascal gxPaperType GXCopyPaperType(gxPaperType srcPaperType, gxPaperType dstPaperType)
  1301. ;
  1302.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1303.         Macro
  1304.         _GXCopyPaperType
  1305.             move.l              #$00000045,D0
  1306.             dc.w                $ABFE
  1307.         EndM
  1308.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1309.         IMPORT_CFM_FUNCTION GXCopyPaperType
  1310.     ENDIF
  1311.  
  1312. ;
  1313. ; pascal void GXGetPaperTypeName(gxPaperType aPaperType, Str31 papertypeName)
  1314. ;
  1315.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1316.         Macro
  1317.         _GXGetPaperTypeName
  1318.             move.l              #$00000046,D0
  1319.             dc.w                $ABFE
  1320.         EndM
  1321.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1322.         IMPORT_CFM_FUNCTION GXGetPaperTypeName
  1323.     ENDIF
  1324.  
  1325. ;
  1326. ; pascal void GXGetPaperTypeDimensions(gxPaperType aPaperType, gxRectangle *pageSize, gxRectangle *paperSize)
  1327. ;
  1328.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1329.         Macro
  1330.         _GXGetPaperTypeDimensions
  1331.             move.l              #$00000047,D0
  1332.             dc.w                $ABFE
  1333.         EndM
  1334.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1335.         IMPORT_CFM_FUNCTION GXGetPaperTypeDimensions
  1336.     ENDIF
  1337.  
  1338. ;
  1339. ; pascal gxJob GXGetPaperTypeJob(gxPaperType aPaperType)
  1340. ;
  1341.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1342.         Macro
  1343.         _GXGetPaperTypeJob
  1344.             move.l              #$00000048,D0
  1345.             dc.w                $ABFE
  1346.         EndM
  1347.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1348.         IMPORT_CFM_FUNCTION GXGetPaperTypeJob
  1349.     ENDIF
  1350.  
  1351. ;
  1352. ; pascal Collection GXGetPaperTypeCollection(gxPaperType aPaperType)
  1353. ;
  1354.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1355.         Macro
  1356.         _GXGetPaperTypeCollection
  1357.             move.l              #$00000049,D0
  1358.             dc.w                $ABFE
  1359.         EndM
  1360.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1361.         IMPORT_CFM_FUNCTION GXGetPaperTypeCollection
  1362.     ENDIF
  1363.  
  1364.  
  1365. ;    Printer Routines
  1366. ;
  1367.  
  1368. ;
  1369. ; pascal gxPrinter GXGetJobFormattingPrinter(gxJob aJob)
  1370. ;
  1371.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1372.         Macro
  1373.         _GXGetJobFormattingPrinter
  1374.             move.l              #$00000027,D0
  1375.             dc.w                $ABFE
  1376.         EndM
  1377.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1378.         IMPORT_CFM_FUNCTION GXGetJobFormattingPrinter
  1379.     ENDIF
  1380.  
  1381. ;
  1382. ; pascal gxPrinter GXGetJobOutputPrinter(gxJob aJob)
  1383. ;
  1384.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1385.         Macro
  1386.         _GXGetJobOutputPrinter
  1387.             move.l              #$00000028,D0
  1388.             dc.w                $ABFE
  1389.         EndM
  1390.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1391.         IMPORT_CFM_FUNCTION GXGetJobOutputPrinter
  1392.     ENDIF
  1393.  
  1394. ;
  1395. ; pascal gxPrinter GXGetJobPrinter(gxJob aJob)
  1396. ;
  1397.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1398.         Macro
  1399.         _GXGetJobPrinter
  1400.             move.l              #$00000029,D0
  1401.             dc.w                $ABFE
  1402.         EndM
  1403.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1404.         IMPORT_CFM_FUNCTION GXGetJobPrinter
  1405.     ENDIF
  1406.  
  1407. ;
  1408. ; pascal gxJob GXGetPrinterJob(gxPrinter aPrinter)
  1409. ;
  1410.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1411.         Macro
  1412.         _GXGetPrinterJob
  1413.             move.l              #$0000002A,D0
  1414.             dc.w                $ABFE
  1415.         EndM
  1416.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1417.         IMPORT_CFM_FUNCTION GXGetPrinterJob
  1418.     ENDIF
  1419.  
  1420. ;
  1421. ; pascal void GXForEachPrinterViewDeviceDo(gxPrinter aPrinter, GXViewDeviceUPP aProc, void *refCon)
  1422. ;
  1423.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1424.         Macro
  1425.         _GXForEachPrinterViewDeviceDo
  1426.             move.l              #$0000002B,D0
  1427.             dc.w                $ABFE
  1428.         EndM
  1429.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1430.         IMPORT_CFM_FUNCTION GXForEachPrinterViewDeviceDo
  1431.     ENDIF
  1432.  
  1433. ;
  1434. ; pascal long GXCountPrinterViewDevices(gxPrinter aPrinter)
  1435. ;
  1436.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1437.         Macro
  1438.         _GXCountPrinterViewDevices
  1439.             move.l              #$0000002C,D0
  1440.             dc.w                $ABFE
  1441.         EndM
  1442.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1443.         IMPORT_CFM_FUNCTION GXCountPrinterViewDevices
  1444.     ENDIF
  1445.  
  1446. ;
  1447. ; pascal gxViewDevice GXGetPrinterViewDevice(gxPrinter aPrinter, long whichViewDevice)
  1448. ;
  1449.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1450.         Macro
  1451.         _GXGetPrinterViewDevice
  1452.             move.l              #$0000002D,D0
  1453.             dc.w                $ABFE
  1454.         EndM
  1455.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1456.         IMPORT_CFM_FUNCTION GXGetPrinterViewDevice
  1457.     ENDIF
  1458.  
  1459. ;
  1460. ; pascal void GXSelectPrinterViewDevice(gxPrinter aPrinter, long whichViewDevice)
  1461. ;
  1462.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1463.         Macro
  1464.         _GXSelectPrinterViewDevice
  1465.             move.l              #$0000002E,D0
  1466.             dc.w                $ABFE
  1467.         EndM
  1468.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1469.         IMPORT_CFM_FUNCTION GXSelectPrinterViewDevice
  1470.     ENDIF
  1471.  
  1472. ;
  1473. ; pascal void GXGetPrinterName(gxPrinter aPrinter, Str31 printerName)
  1474. ;
  1475.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1476.         Macro
  1477.         _GXGetPrinterName
  1478.             move.l              #$0000002F,D0
  1479.             dc.w                $ABFE
  1480.         EndM
  1481.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1482.         IMPORT_CFM_FUNCTION GXGetPrinterName
  1483.     ENDIF
  1484.  
  1485. ;
  1486. ; pascal OSType GXGetPrinterType(gxPrinter aPrinter)
  1487. ;
  1488.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1489.         Macro
  1490.         _GXGetPrinterType
  1491.             move.l              #$00000030,D0
  1492.             dc.w                $ABFE
  1493.         EndM
  1494.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1495.         IMPORT_CFM_FUNCTION GXGetPrinterType
  1496.     ENDIF
  1497.  
  1498. ;
  1499. ; pascal void GXGetPrinterDriverName(gxPrinter aPrinter, Str31 driverName)
  1500. ;
  1501.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1502.         Macro
  1503.         _GXGetPrinterDriverName
  1504.             move.l              #$00000031,D0
  1505.             dc.w                $ABFE
  1506.         EndM
  1507.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1508.         IMPORT_CFM_FUNCTION GXGetPrinterDriverName
  1509.     ENDIF
  1510.  
  1511. ;
  1512. ; pascal OSType GXGetPrinterDriverType(gxPrinter aPrinter)
  1513. ;
  1514.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1515.         Macro
  1516.         _GXGetPrinterDriverType
  1517.             move.l              #$00000032,D0
  1518.             dc.w                $ABFE
  1519.         EndM
  1520.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1521.         IMPORT_CFM_FUNCTION GXGetPrinterDriverType
  1522.     ENDIF
  1523.  
  1524.  
  1525. ;    Dialog Routines
  1526. ;
  1527.  
  1528. ;
  1529. ; pascal gxDialogResult GXJobDefaultFormatDialog(gxJob aJob, gxEditMenuRecord *anEditMenuRec)
  1530. ;
  1531.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1532.         Macro
  1533.         _GXJobDefaultFormatDialog
  1534.             move.l              #$00000010,D0
  1535.             dc.w                $ABFE
  1536.         EndM
  1537.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1538.         IMPORT_CFM_FUNCTION GXJobDefaultFormatDialog
  1539.     ENDIF
  1540.  
  1541. ;
  1542. ; pascal gxDialogResult GXJobPrintDialog(gxJob aJob, gxEditMenuRecord *anEditMenuRec)
  1543. ;
  1544.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1545.         Macro
  1546.         _GXJobPrintDialog
  1547.             move.l              #$00000011,D0
  1548.             dc.w                $ABFE
  1549.         EndM
  1550.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1551.         IMPORT_CFM_FUNCTION GXJobPrintDialog
  1552.     ENDIF
  1553.  
  1554. ;
  1555. ; pascal gxDialogResult GXFormatDialog(gxFormat aFormat, gxEditMenuRecord *anEditMenuRec, StringPtr title)
  1556. ;
  1557.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1558.         Macro
  1559.         _GXFormatDialog
  1560.             move.l              #$00000012,D0
  1561.             dc.w                $ABFE
  1562.         EndM
  1563.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1564.         IMPORT_CFM_FUNCTION GXFormatDialog
  1565.     ENDIF
  1566.  
  1567. ;
  1568. ; pascal void GXEnableJobScalingPanel(gxJob aJob, Boolean enabled)
  1569. ;
  1570.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1571.         Macro
  1572.         _GXEnableJobScalingPanel
  1573.             move.l              #$00000040,D0
  1574.             dc.w                $ABFE
  1575.         EndM
  1576.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1577.         IMPORT_CFM_FUNCTION GXEnableJobScalingPanel
  1578.     ENDIF
  1579.  
  1580. ;
  1581. ; pascal void GXGetJobPanelDimensions(gxJob aJob, Rect *panelArea)
  1582. ;
  1583.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1584.         Macro
  1585.         _GXGetJobPanelDimensions
  1586.             move.l              #$00000041,D0
  1587.             dc.w                $ABFE
  1588.         EndM
  1589.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1590.         IMPORT_CFM_FUNCTION GXGetJobPanelDimensions
  1591.     ENDIF
  1592.  
  1593.  
  1594. ;    Spooling Routines
  1595. ;
  1596.  
  1597. ;
  1598. ; pascal void GXGetJobPageRange(gxJob theJob, long *firstPage, long *lastPage)
  1599. ;
  1600.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1601.         Macro
  1602.         _GXGetJobPageRange
  1603.             move.l              #$00000017,D0
  1604.             dc.w                $ABFE
  1605.         EndM
  1606.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1607.         IMPORT_CFM_FUNCTION GXGetJobPageRange
  1608.     ENDIF
  1609.  
  1610. ;
  1611. ; pascal void GXStartJob(gxJob theJob, StringPtr docName, long pageCount)
  1612. ;
  1613.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1614.         Macro
  1615.         _GXStartJob
  1616.             move.l              #$00000018,D0
  1617.             dc.w                $ABFE
  1618.         EndM
  1619.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1620.         IMPORT_CFM_FUNCTION GXStartJob
  1621.     ENDIF
  1622.  
  1623. ;
  1624. ; pascal void GXPrintPage(gxJob theJob, long pageNumber, gxFormat theFormat, gxShape thePage)
  1625. ;
  1626.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1627.         Macro
  1628.         _GXPrintPage
  1629.             move.l              #$00000019,D0
  1630.             dc.w                $ABFE
  1631.         EndM
  1632.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1633.         IMPORT_CFM_FUNCTION GXPrintPage
  1634.     ENDIF
  1635.  
  1636. ;
  1637. ; pascal Boolean GXStartPage(gxJob theJob, long pageNumber, gxFormat theFormat, long numViewPorts, gxViewPort *viewPortList)
  1638. ;
  1639.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1640.         Macro
  1641.         _GXStartPage
  1642.             move.l              #$0000001A,D0
  1643.             dc.w                $ABFE
  1644.         EndM
  1645.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1646.         IMPORT_CFM_FUNCTION GXStartPage
  1647.     ENDIF
  1648.  
  1649. ;
  1650. ; pascal void GXFinishPage(gxJob theJob)
  1651. ;
  1652.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1653.         Macro
  1654.         _GXFinishPage
  1655.             move.l              #$0000001B,D0
  1656.             dc.w                $ABFE
  1657.         EndM
  1658.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1659.         IMPORT_CFM_FUNCTION GXFinishPage
  1660.     ENDIF
  1661.  
  1662. ;
  1663. ; pascal void GXFinishJob(gxJob theJob)
  1664. ;
  1665.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1666.         Macro
  1667.         _GXFinishJob
  1668.             move.l              #$0000001C,D0
  1669.             dc.w                $ABFE
  1670.         EndM
  1671.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1672.         IMPORT_CFM_FUNCTION GXFinishJob
  1673.     ENDIF
  1674.  
  1675.  
  1676. ;    PrintFile Routines
  1677. ;
  1678.  
  1679. ;
  1680. ; pascal gxPrintFile GXOpenPrintFile(gxJob theJob, FSSpecPtr anFSSpec, char permission)
  1681. ;
  1682.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1683.         Macro
  1684.         _GXOpenPrintFile
  1685.             move.l              #$0000004A,D0
  1686.             dc.w                $ABFE
  1687.         EndM
  1688.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1689.         IMPORT_CFM_FUNCTION GXOpenPrintFile
  1690.     ENDIF
  1691.  
  1692. ;
  1693. ; pascal void GXClosePrintFile(gxPrintFile aPrintFile)
  1694. ;
  1695.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1696.         Macro
  1697.         _GXClosePrintFile
  1698.             move.l              #$0000004B,D0
  1699.             dc.w                $ABFE
  1700.         EndM
  1701.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1702.         IMPORT_CFM_FUNCTION GXClosePrintFile
  1703.     ENDIF
  1704.  
  1705. ;
  1706. ; pascal gxJob GXGetPrintFileJob(gxPrintFile aPrintFile)
  1707. ;
  1708.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1709.         Macro
  1710.         _GXGetPrintFileJob
  1711.             move.l              #$0000004C,D0
  1712.             dc.w                $ABFE
  1713.         EndM
  1714.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1715.         IMPORT_CFM_FUNCTION GXGetPrintFileJob
  1716.     ENDIF
  1717.  
  1718. ;
  1719. ; pascal long GXCountPrintFilePages(gxPrintFile aPrintFile)
  1720. ;
  1721.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1722.         Macro
  1723.         _GXCountPrintFilePages
  1724.             move.l              #$0000004D,D0
  1725.             dc.w                $ABFE
  1726.         EndM
  1727.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1728.         IMPORT_CFM_FUNCTION GXCountPrintFilePages
  1729.     ENDIF
  1730.  
  1731. ;
  1732. ; pascal void GXReadPrintFilePage(gxPrintFile aPrintFile, long pageNumber, long numViewPorts, gxViewPort *viewPortList, gxFormat *pgFormat, gxShape *pgShape)
  1733. ;
  1734.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1735.         Macro
  1736.         _GXReadPrintFilePage
  1737.             move.l              #$0000004E,D0
  1738.             dc.w                $ABFE
  1739.         EndM
  1740.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1741.         IMPORT_CFM_FUNCTION GXReadPrintFilePage
  1742.     ENDIF
  1743.  
  1744. ;
  1745. ; pascal void GXReplacePrintFilePage(gxPrintFile aPrintFile, long pageNumber, gxFormat aFormat, gxShape aShape)
  1746. ;
  1747.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1748.         Macro
  1749.         _GXReplacePrintFilePage
  1750.             move.l              #$0000004F,D0
  1751.             dc.w                $ABFE
  1752.         EndM
  1753.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1754.         IMPORT_CFM_FUNCTION GXReplacePrintFilePage
  1755.     ENDIF
  1756.  
  1757. ;
  1758. ; pascal void GXInsertPrintFilePage(gxPrintFile aPrintFile, long atPageNumber, gxFormat pgFormat, gxShape pgShape)
  1759. ;
  1760.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1761.         Macro
  1762.         _GXInsertPrintFilePage
  1763.             move.l              #$00000050,D0
  1764.             dc.w                $ABFE
  1765.         EndM
  1766.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1767.         IMPORT_CFM_FUNCTION GXInsertPrintFilePage
  1768.     ENDIF
  1769.  
  1770. ;
  1771. ; pascal void GXDeletePrintFilePageRange(gxPrintFile aPrintFile, long fromPageNumber, long toPageNumber)
  1772. ;
  1773.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1774.         Macro
  1775.         _GXDeletePrintFilePageRange
  1776.             move.l              #$00000051,D0
  1777.             dc.w                $ABFE
  1778.         EndM
  1779.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1780.         IMPORT_CFM_FUNCTION GXDeletePrintFilePageRange
  1781.     ENDIF
  1782.  
  1783. ;
  1784. ; pascal void GXSavePrintFile(gxPrintFile aPrintFile, FSSpec *anFSSpec)
  1785. ;
  1786.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1787.         Macro
  1788.         _GXSavePrintFile
  1789.             move.l              #$00000052,D0
  1790.             dc.w                $ABFE
  1791.         EndM
  1792.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1793.         IMPORT_CFM_FUNCTION GXSavePrintFile
  1794.     ENDIF
  1795.  
  1796.  
  1797. ;    ColorSync Routines
  1798. ;
  1799.  
  1800. ;
  1801. ; pascal long GXFindPrinterProfile(gxPrinter aPrinter, void *searchData, long index, gxColorProfile *returnedProfile)
  1802. ;
  1803.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1804.         Macro
  1805.         _GXFindPrinterProfile
  1806.             move.l              #$00000053,D0
  1807.             dc.w                $ABFE
  1808.         EndM
  1809.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1810.         IMPORT_CFM_FUNCTION GXFindPrinterProfile
  1811.     ENDIF
  1812.  
  1813. ;
  1814. ; pascal long GXFindFormatProfile(gxFormat aFormat, void *searchData, long index, gxColorProfile *returnedProfile)
  1815. ;
  1816.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1817.         Macro
  1818.         _GXFindFormatProfile
  1819.             move.l              #$00000054,D0
  1820.             dc.w                $ABFE
  1821.         EndM
  1822.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1823.         IMPORT_CFM_FUNCTION GXFindFormatProfile
  1824.     ENDIF
  1825.  
  1826. ;
  1827. ; pascal void GXSetPrinterProfile(gxPrinter aPrinter, gxColorProfile oldProfile, gxColorProfile newProfile)
  1828. ;
  1829.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1830.         Macro
  1831.         _GXSetPrinterProfile
  1832.             move.l              #$00000055,D0
  1833.             dc.w                $ABFE
  1834.         EndM
  1835.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1836.         IMPORT_CFM_FUNCTION GXSetPrinterProfile
  1837.     ENDIF
  1838.  
  1839. ;
  1840. ; pascal void GXSetFormatProfile(gxFormat aFormat, gxColorProfile oldProfile, gxColorProfile newProfile)
  1841. ;
  1842.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1843.         Macro
  1844.         _GXSetFormatProfile
  1845.             move.l              #$00000056,D0
  1846.             dc.w                $ABFE
  1847.         EndM
  1848.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1849.         IMPORT_CFM_FUNCTION GXSetFormatProfile
  1850.     ENDIF
  1851.  
  1852.  
  1853. ; ************************************************************************
  1854. ;                        Start of old "GXPrintingResEquates.h/a/p" interface file.
  1855. ;                ************************************************************************
  1856.  
  1857. ;     ------------------------------------
  1858. ;                Basic client types
  1859. ;    ------------------------------------ 
  1860.  
  1861.  
  1862. gxPrintingManagerType            EQU        'pmgr'
  1863. gxImagingSystemType                EQU        'gxis'
  1864. gxPrinterDriverType                EQU        'pdvr'
  1865. gxPrintingExtensionType            EQU        'pext'
  1866. gxUnknownPrinterType            EQU        'none'
  1867. gxAnyPrinterType                EQU        'univ'
  1868. gxQuickdrawPrinterType            EQU        'qdrw'
  1869. gxPortableDocPrinterType        EQU        'gxpd'
  1870. gxRasterPrinterType                EQU        'rast'
  1871. gxPostscriptPrinterType            EQU        'post'
  1872. gxVectorPrinterType                EQU        'vect'
  1873. ;  All pre-defined printing collection items have this ID 
  1874.  
  1875. gxPrintingTagID                    EQU        -28672
  1876.  
  1877. ;     ----------------------------------------------------------------------
  1878. ;
  1879. ;        Resource types and IDs used by both extension and driver writers
  1880. ;
  1881. ;    ---------------------------------------------------------------------- 
  1882.  
  1883. ;  Resources in a printer driver or extension must be based off of these IDs 
  1884.  
  1885. gxPrintingDriverBaseID            EQU        -27648
  1886. gxPrintingExtensionBaseID        EQU        -27136
  1887. ;     Override resources tell the system what messages a driver or extension
  1888. ;        is overriding.  A driver may have a series of these resources. 
  1889. ;  Override resource type for 68k resource-based code:
  1890.  
  1891.  
  1892. gxOverrideType                    EQU        'over'
  1893.  
  1894. ;  Override resource type for PowerPC datafork-based code:
  1895.  
  1896.  
  1897. gxNativeOverrideType            EQU        'povr'
  1898.  
  1899. ;     --------------------------------------------------------------
  1900. ;
  1901. ;        Message ID definitions by both extension and driver writers
  1902. ;
  1903. ;    --------------------------------------------------------------- 
  1904.  
  1905. ;  Identifiers for universal message overrides. 
  1906.  
  1907. gxInitializeMsg                    EQU        0
  1908. gxShutDownMsg                    EQU        1
  1909. gxJobIdleMsg                    EQU        2
  1910. gxJobStatusMsg                    EQU        3
  1911. gxPrintingEventMsg                EQU        4
  1912. gxJobDefaultFormatDialogMsg        EQU        5
  1913. gxFormatDialogMsg                EQU        6
  1914. gxJobPrintDialogMsg                EQU        7
  1915. gxFilterPanelEventMsg            EQU        8
  1916. gxHandlePanelEventMsg            EQU        9
  1917. gxParsePageRangeMsg                EQU        10
  1918. gxDefaultJobMsg                    EQU        11
  1919. gxDefaultFormatMsg                EQU        12
  1920. gxDefaultPaperTypeMsg            EQU        13
  1921. gxDefaultPrinterMsg                EQU        14
  1922. gxCreateSpoolFileMsg            EQU        15
  1923. gxSpoolPageMsg                    EQU        16
  1924. gxSpoolDataMsg                    EQU        17
  1925. gxSpoolResourceMsg                EQU        18
  1926. gxCompleteSpoolFileMsg            EQU        19
  1927. gxCountPagesMsg                    EQU        20
  1928. gxDespoolPageMsg                EQU        21
  1929. gxDespoolDataMsg                EQU        22
  1930. gxDespoolResourceMsg            EQU        23
  1931. gxCloseSpoolFileMsg                EQU        24
  1932. gxStartJobMsg                    EQU        25
  1933. gxFinishJobMsg                    EQU        26
  1934. gxStartPageMsg                    EQU        27
  1935. gxFinishPageMsg                    EQU        28
  1936. gxPrintPageMsg                    EQU        29
  1937. gxSetupImageDataMsg                EQU        30
  1938. gxImageJobMsg                    EQU        31
  1939. gxImageDocumentMsg                EQU        32
  1940. gxImagePageMsg                    EQU        33
  1941. gxRenderPageMsg                    EQU        34
  1942. gxCreateImageFileMsg            EQU        35
  1943. gxOpenConnectionMsg                EQU        36
  1944. gxCloseConnectionMsg            EQU        37
  1945. gxStartSendPageMsg                EQU        38
  1946. gxFinishSendPageMsg                EQU        39
  1947. gxWriteDataMsg                    EQU        40
  1948. gxBufferDataMsg                    EQU        41
  1949. gxDumpBufferMsg                    EQU        42
  1950. gxFreeBufferMsg                    EQU        43
  1951. gxCheckStatusMsg                EQU        44
  1952. gxGetDeviceStatusMsg            EQU        45
  1953. gxFetchTaggedDataMsg            EQU        46
  1954. gxGetDTPMenuListMsg                EQU        47
  1955. gxDTPMenuSelectMsg                EQU        48
  1956. gxHandleAlertFilterMsg            EQU        49
  1957. gxJobFormatModeQueryMsg            EQU        50
  1958. gxWriteStatusToDTPWindowMsg        EQU        51
  1959. gxInitializeStatusAlertMsg        EQU        52
  1960. gxHandleAlertStatusMsg            EQU        53
  1961. gxHandleAlertEventMsg            EQU        54
  1962. gxCleanupStartJobMsg            EQU        55
  1963. gxCleanupStartPageMsg            EQU        56
  1964. gxCleanupOpenConnectionMsg        EQU        57
  1965. gxCleanupStartSendPageMsg        EQU        58
  1966. gxDefaultDesktopPrinterMsg        EQU        59
  1967. gxCaptureOutputDeviceMsg        EQU        60
  1968. gxOpenConnectionRetryMsg        EQU        61
  1969. gxExamineSpoolFileMsg            EQU        62
  1970. gxFinishSendPlaneMsg            EQU        63
  1971. gxDoesPaperFitMsg                EQU        64
  1972. gxChooserMessageMsg                EQU        65
  1973. gxFindPrinterProfileMsg            EQU        66
  1974. gxFindFormatProfileMsg            EQU        67
  1975. gxSetPrinterProfileMsg            EQU        68
  1976. gxSetFormatProfileMsg            EQU        69
  1977. gxHandleAltDestinationMsg        EQU        70
  1978. gxSetupPageImageDataMsg            EQU        71
  1979.  
  1980. ;  Identifiers for Quickdraw message overrides. 
  1981.  
  1982. gxPrOpenDocMsg                    EQU        0
  1983. gxPrCloseDocMsg                    EQU        1
  1984. gxPrOpenPageMsg                    EQU        2
  1985. gxPrClosePageMsg                EQU        3
  1986. gxPrintDefaultMsg                EQU        4
  1987. gxPrStlDialogMsg                EQU        5
  1988. gxPrJobDialogMsg                EQU        6
  1989. gxPrStlInitMsg                    EQU        7
  1990. gxPrJobInitMsg                    EQU        8
  1991. gxPrDlgMainMsg                    EQU        9
  1992. gxPrValidateMsg                    EQU        10
  1993. gxPrJobMergeMsg                    EQU        11
  1994. gxPrGeneralMsg                    EQU        12
  1995. gxConvertPrintRecordToMsg        EQU        13
  1996. gxConvertPrintRecordFromMsg        EQU        14
  1997. gxPrintRecordToJobMsg            EQU        15
  1998.  
  1999. ;  Identifiers for raster imaging message overrides. 
  2000.  
  2001. gxRasterDataInMsg                EQU        0
  2002. gxRasterLineFeedMsg                EQU        1
  2003. gxRasterPackageBitmapMsg        EQU        2
  2004.  
  2005. ;  Identifiers for PostScript imaging message overrides. 
  2006.  
  2007. gxPostscriptQueryPrinterMsg        EQU        0
  2008. gxPostscriptInitializePrinterMsg EQU    1
  2009. gxPostscriptResetPrinterMsg        EQU        2
  2010. gxPostscriptExitServerMsg        EQU        3
  2011. gxPostscriptGetStatusTextMsg    EQU        4
  2012. gxPostscriptGetPrinterTextMsg    EQU        5
  2013. gxPostscriptScanStatusTextMsg    EQU        6
  2014. gxPostscriptScanPrinterTextMsg    EQU        7
  2015. gxPostscriptGetDocumentProcSetListMsg EQU 8
  2016. gxPostscriptDownloadProcSetListMsg EQU    9
  2017. gxPostscriptGetPrinterGlyphsInformationMsg EQU 10
  2018. gxPostscriptStreamFontMsg        EQU        11
  2019. gxPostscriptDoDocumentHeaderMsg    EQU        12
  2020. gxPostscriptDoDocumentSetUpMsg    EQU        13
  2021. gxPostscriptDoDocumentTrailerMsg EQU    14
  2022. gxPostscriptDoPageSetUpMsg        EQU        15
  2023. gxPostscriptSelectPaperTypeMsg    EQU        16
  2024. gxPostscriptDoPageTrailerMsg    EQU        17
  2025. gxPostscriptEjectPageMsg        EQU        18
  2026. gxPostscriptProcessShapeMsg        EQU        19
  2027. gxPostScriptEjectPendingPageMsg    EQU        20
  2028.  
  2029. ;  Identifiers for Vector imaging message overrides. 
  2030.  
  2031. gxVectorPackageDataMsg            EQU        0
  2032. gxVectorLoadPensMsg                EQU        1
  2033. gxVectorVectorizeShapeMsg        EQU        2
  2034.  
  2035. ;  Dialog related resource types 
  2036.  
  2037. gxPrintingAlertType                EQU        'plrt'
  2038. gxStatusType                    EQU        'stat'
  2039. gxExtendedDITLType                EQU        'xdtl'
  2040. gxPrintPanelType                EQU        'ppnl'
  2041. gxCollectionType                EQU        'cltn'
  2042.  
  2043. ;  Communication resource types 
  2044. ;    The looker resource is used by the Chooser PACK to determine what kind
  2045. ;    of communications this driver supports. (In order to generate/handle the 
  2046. ;    pop-up menu for "Connect via:".
  2047. ;    
  2048. ;    The looker resource is also used by PrinterShare to determine the AppleTalk NBP Type
  2049. ;    for servers created for this driver.
  2050. ;
  2051.  
  2052.  
  2053. gxLookerType                    EQU        'look'
  2054. gxLookerID                        EQU        -4096
  2055.  
  2056. ;  The communications method and private data used to connect to the printer 
  2057.  
  2058. gxDeviceCommunicationsType        EQU        'comm'
  2059. ;     -------------------------------------------------
  2060. ;
  2061. ;    Resource types and IDs used by extension writers
  2062. ;
  2063. ;    ------------------------------------------------- 
  2064.  
  2065.  
  2066. gxExtensionUniversalOverrideID    EQU        -27136
  2067.  
  2068. gxExtensionImagingOverrideSelectorID EQU -27136
  2069.  
  2070. gxExtensionScopeType            EQU        'scop'
  2071. gxDriverScopeID                    EQU        -27136
  2072. gxPrinterScopeID                EQU        -27135
  2073. gxPrinterExceptionScopeID        EQU        -27134
  2074.  
  2075. gxExtensionLoadType                EQU        'load'
  2076. gxExtensionLoadID                EQU        -27136
  2077.  
  2078. gxExtensionLoadFirst            EQU        $00000100
  2079. gxExtensionLoadAnywhere            EQU        $7FFFFFFF
  2080. gxExtensionLoadLast                EQU        $FFFFFF00
  2081.  
  2082. gxExtensionOptimizationType        EQU        'eopt'
  2083. gxExtensionOptimizationID        EQU        -27136
  2084.  
  2085. ;     -----------------------------------------------
  2086. ;
  2087. ;    Resource types and IDs used by driver writers
  2088. ;
  2089. ;    ----------------------------------------------- 
  2090.  
  2091.  
  2092. gxDriverUniversalOverrideID        EQU        -27648
  2093. gxDriverImagingOverrideID        EQU        -27647
  2094. gxDriverCompatibilityOverrideID    EQU        -27646
  2095.  
  2096. gxDriverFileFormatType            EQU        'pfil'
  2097. gxDriverFileFormatID            EQU        -27648
  2098.  
  2099.  
  2100. gxDestinationAdditionType        EQU        'dsta'
  2101. gxDestinationAdditionID            EQU        -27648
  2102.  
  2103. ;  IMAGING RESOURCES 
  2104. ;     The imaging system resource specifies which imaging system a printer
  2105. ;        driver wishes to use. 
  2106.  
  2107.  
  2108. gxImagingSystemSelectorType        EQU        'isys'
  2109. gxImagingSystemSelectorID        EQU        -27648
  2110.  
  2111. ;  'exft' resource ID -- exclude font list 
  2112.  
  2113. kExcludeFontListType            EQU        'exft'
  2114. kExcludeFontListID                EQU        -27648
  2115. ;  Resource for type for color matching 
  2116.  
  2117. gxColorMatchingDataType            EQU        'prof'
  2118. gxColorMatchingDataID            EQU        -27648
  2119.  
  2120. ;  Resource type and id for the tray count 
  2121.  
  2122. gxTrayCountDataType                EQU        'tray'
  2123. gxTrayCountDataID                EQU        -27648
  2124.  
  2125. ;  Resource type for the tray names 
  2126.  
  2127. gxTrayNameDataType                EQU        'tryn'
  2128.  
  2129. ;  Resource type for manual feed preferences, stored in DTP. 
  2130.  
  2131. gxManualFeedAlertPrefsType        EQU        'mfpr'
  2132. gxManualFeedAlertPrefsID        EQU        -27648
  2133. ;  Resource type for desktop printer output characteristics, stored in DTP. 
  2134.  
  2135. gxDriverOutputType                EQU        'outp'
  2136. gxDriverOutputTypeID            EQU        1
  2137.  
  2138. ;  IO Resources 
  2139. ;  Resource type and ID for default IO and buffering resources 
  2140.  
  2141. gxUniversalIOPrefsType            EQU        'iobm'
  2142. gxUniversalIOPrefsID            EQU        -27648
  2143.  
  2144. ;     Resource types and IDs for default implementation of CaptureOutputDevice.
  2145. ;        The default implementation of CaptureOutputDevice only handles PAP devices 
  2146.  
  2147. gxCaptureType                    EQU        'cpts'
  2148. gxCaptureStringID                EQU        -27648
  2149. gxReleaseStringID                EQU        -27647
  2150. gxUncapturedAppleTalkType        EQU        -27646
  2151. gxCapturedAppleTalkType            EQU        -27645
  2152.  
  2153. ;  Resource type and ID for custom halftone matrix 
  2154.  
  2155. gxCustomMatrixType                EQU        'dmat'
  2156. gxCustomMatrixID                EQU        -27648
  2157. ;  Resource type and ID for raster driver rendering preferences 
  2158.  
  2159. gxRasterPrefsType                EQU        'rdip'
  2160. gxRasterPrefsID                    EQU        -27648
  2161.  
  2162. ;  Resource type for specifiying a colorset 
  2163.  
  2164. gxColorSetResType                EQU        'crst'
  2165.  
  2166. ;  Resource type and ID for raster driver packaging preferences 
  2167.  
  2168. gxRasterPackType                EQU        'rpck'
  2169. gxRasterPackID                    EQU        -27648
  2170.  
  2171. ;  Resource type and ID for raster driver packaging options 
  2172.  
  2173.  
  2174. gxRasterNumNone                    EQU        0                    ; Number isn't output at all 
  2175. gxRasterNumDirect                EQU        1                    ; Lowest minWidth bytes as data 
  2176. gxRasterNumToASCII                EQU        2                    ; minWidth ASCII characters 
  2177.  
  2178.  
  2179. gxRasterPackOptionsType            EQU        'ropt'
  2180. gxRasterPackOptionsID            EQU        -27648
  2181.  
  2182. ;  Resource type for the PostScript imaging system procedure set control resource 
  2183.  
  2184. gxPostscriptProcSetControlType    EQU        'prec'
  2185.  
  2186. ;  Resource type for the PostScript imaging system printer font resource 
  2187.  
  2188. gxPostscriptPrinterFontType        EQU        'pfnt'
  2189.  
  2190. ;  Resource type and ID for the PostScript imaging system imaging preferences 
  2191.  
  2192. gxPostscriptPrefsType            EQU        'pdip'
  2193. gxPostscriptPrefsID                EQU        -27648
  2194. ;  Resource type and ID for the PostScript imaging system default scanning code 
  2195.  
  2196. gxPostscriptScanningType        EQU        'scan'
  2197. gxPostscriptScanningID            EQU        -27648
  2198.  
  2199. ;  Old Application Support Resources 
  2200.  
  2201. gxCustType                        EQU        'cust'
  2202. gxCustID                        EQU        -8192
  2203.  
  2204.  
  2205. gxReslType                        EQU        'resl'
  2206. gxReslID                        EQU        -8192
  2207.  
  2208.  
  2209. gxDiscreteResolution            EQU        0
  2210.  
  2211.  
  2212. gxStlDialogResID                EQU        -8192
  2213.  
  2214.  
  2215. gxJobDialogResID                EQU        -8191
  2216.  
  2217.  
  2218. gxScaleTableType                EQU        'stab'
  2219. gxDITLControlType                EQU        'dctl'
  2220. ;     The default implementation of gxPrintDefault loads and
  2221. ;    PrValidates a print record stored in the following driver resource. 
  2222.  
  2223. gxPrintRecordType                EQU        'PREC'
  2224. gxDefaultPrintRecordID            EQU        0
  2225.  
  2226. ;    -----------------------------------------------
  2227. ;
  2228. ;    Resource types and IDs used in papertype files
  2229. ;
  2230. ;    -----------------------------------------------
  2231. ;
  2232.  
  2233. ;  Resource type and ID for driver papertypes placed in individual files 
  2234.  
  2235. gxSignatureType                    EQU        'sig '
  2236. gxPapertypeSignatureID            EQU        0
  2237.  
  2238. ;  Papertype creator types 
  2239.  
  2240. gxDrvrPaperType                    EQU        'drpt'
  2241. gxSysPaperType                    EQU        'sypt'                ; System paper type creator 
  2242. gxUserPaperType                    EQU        'uspt'                ; User paper type creator 
  2243.                                                             ; Driver creator types == driver file's creator value 
  2244. gxPaperTypeType                    EQU        'ptyp'
  2245.  
  2246. ; *********************************************************************
  2247. ;                    Start of old "GXPrintingMessages.h/a/p" interface file.
  2248. ;            *********************************************************************
  2249.  
  2250. ;  ------------------------------------------------------------------------------
  2251. ;
  2252. ;                                    Constants and Types
  2253. ;
  2254. ;-------------------------------------------------------------------------------- 
  2255.  
  2256. ;
  2257. ;    ABSTRACT DATA TYPES
  2258. ;
  2259. ;
  2260.  
  2261.  
  2262.  
  2263. ;
  2264. ;    DIALOG PANEL CONSTANTS AND TYPES
  2265. ;
  2266. ;
  2267.  
  2268. ; typedef long                             gxPanelEvent
  2269.  
  2270. ;  Dialog panel event equates 
  2271.  
  2272. gxPanelNoEvt                    EQU        0
  2273. gxPanelOpenEvt                    EQU        1                    ; Initialize and draw 
  2274. gxPanelCloseEvt                    EQU        2                    ; Your panel is going away (panel switchL, confirm or cancel) 
  2275. gxPanelHitEvt                    EQU        3                    ; There's a hit in your panel 
  2276. gxPanelActivateEvt                EQU        4                    ; The dialog window has just been activated 
  2277. gxPanelDeactivateEvt            EQU        5                    ; The dialog window is about to be deactivated 
  2278. gxPanelIconFocusEvt                EQU        6                    ; The focus changes from the panel to the icon list 
  2279. gxPanelPanelFocusEvt            EQU        7                    ; The focus changes from the icon list to the panel 
  2280. gxPanelFilterEvt                EQU        8                    ; Every event is filtered 
  2281. gxPanelCancelEvt                EQU        9                    ; The user has cancelled the dialog 
  2282. gxPanelConfirmEvt                EQU        10                    ; The user has confirmed the dialog 
  2283. gxPanelDialogEvt                EQU        11                    ; Event to be handle by dialoghandler 
  2284. gxPanelOtherEvt                    EQU        12                    ; osEvts, etc. 
  2285. gxPanelUserWillConfirmEvt        EQU        13                    ; User has selected confirm, time to parse panel interdependencies 
  2286.  
  2287. ;  Constants for panel responses to dialog handler calls 
  2288. ; typedef long                             gxPanelResult
  2289.  
  2290.  
  2291. gxPanelNoResult                    EQU        0
  2292. gxPanelCancelConfirmation        EQU        1                    ; Only valid from panelUserWillConfirmEvt - used to keep the dialog from going away 
  2293.  
  2294. ;  Panel event info record for FilterPanelEvent and HandlePanelEvent messages 
  2295. gxPanelInfoRecord        RECORD 0
  2296. panelEvt                 ds.l    1                ; offset: $0 (0)        ;  Why we were called 
  2297. panelResId                 ds.w    1                ; offset: $4 (4)        ;  'ppnl' resource ID of current panel 
  2298. pDlg                     ds.l    1                ; offset: $6 (6)        ;  Pointer to dialog 
  2299. theEvent                 ds.l    1                ; offset: $A (10)        ;  Pointer to event 
  2300. itemHit                     ds.w    1                ; offset: $E (14)        ;  Actual item number as Dialog Mgr thinks 
  2301. itemCount                 ds.w    1                ; offset: $10 (16)        ;  Number of items before your items 
  2302. evtAction                 ds.w    1                ; offset: $12 (18)        ;  Once this event is processed, the action that will result 
  2303. ;  (evtAction is only meaningful during filtering) 
  2304. errorStringId             ds.w    1                ; offset: $14 (20)        ;  STR ID of string to put in error alert (0 means no string) 
  2305. theFormat                 ds.l    1                ; offset: $16 (22)        ;  The current format (only meaningful in a format dialog) 
  2306. refCon                     ds.l    1                ; offset: $1A (26)        ;  refCon passed in PanelSetupRecord 
  2307. sizeof                     EQU *                    ; size:   $1E (30)
  2308.                         ENDR
  2309. ;  Constants for the evtAction field in PanelInfoRecord 
  2310.  
  2311. gxOtherAction                    EQU        0                    ; Current item will not change 
  2312. gxClosePanelAction                EQU        1                    ; Panel will be closed 
  2313. gxCancelDialogAction            EQU        2                    ; Dialog will be cancelled 
  2314. gxConfirmDialogAction            EQU        3                    ; Dialog will be confirmed 
  2315.  
  2316. ;  Constants for the panelKind field in gxPanelSetupRecord 
  2317. ; typedef long                             gxPrintingPanelKind
  2318.  
  2319. ;  The gxPanelSetupInfo structure is passed to GXSetupDialogPanel 
  2320. gxPanelSetupRecord        RECORD 0
  2321. panelKind                 ds.l    1                ; offset: $0 (0)
  2322. panelResId                 ds.w    1                ; offset: $4 (4)
  2323. resourceRefNum             ds.w    1                ; offset: $6 (6)
  2324. refCon                     ds.l    1                ; offset: $8 (8)
  2325. sizeof                     EQU *                    ; size:   $C (12)
  2326.                         ENDR
  2327.  
  2328. gxApplicationPanel                EQU        0
  2329. gxExtensionPanel                EQU        1
  2330. gxDriverPanel                    EQU        2
  2331.  
  2332. ;  Constants returned by gxParsePageRange message 
  2333. ; typedef long                             gxParsePageRangeResult
  2334.  
  2335.  
  2336. gxRangeNotParsed                EQU        0                    ; Default initial value 
  2337. gxRangeParsed                    EQU        1                    ; Range has been parsed 
  2338. gxRangeBadFromValue                EQU        2                    ; From value is bad 
  2339. gxRangeBadToValue                EQU        3                    ; To value is bad 
  2340. ;
  2341. ;    STATUS-RELATED CONSTANTS AND TYPES
  2342. ;
  2343. ;
  2344.  
  2345.  
  2346. ;  Structure for status messages 
  2347. gxStatusRecord            RECORD 0
  2348. statusType                 ds.w    1                ; offset: $0 (0)        ;  One of the ids listed above (nonFatalError, etc. ) 
  2349. statusId                 ds.w    1                ; offset: $2 (2)        ;  Specific status (out of paper, etc.) 
  2350. statusAlertId             ds.w    1                ; offset: $4 (4)        ;     Printing alert ID (if any) for status 
  2351. statusOwner                 ds.l    1                ; offset: $6 (6)        ;  Creator type of status owner 
  2352. statResId                 ds.w    1                ; offset: $A (10)        ;  ID for 'stat' resource 
  2353. statResIndex             ds.w    1                ; offset: $C (12)        ;  Index into 'stat' resource for this status 
  2354. dialogResult             ds.w    1                ; offset: $E (14)        ;  ID of button string selected on dismissal of printing alert 
  2355. bufferLen                 ds.w    1                ; offset: $10 (16)        ;  Number of bytes in status buffer - total record size must be <= 512 
  2356. statusBuffer             ds.b    1                ; offset: $12 (18) <-- really an array of length one ;  User response from alert 
  2357.                          ORG 20
  2358. sizeof                     EQU *                    ; size:   $14 (20)
  2359.                         ENDR
  2360.  
  2361. ;  Constants for statusType field of gxStatusRecord 
  2362.  
  2363. gxNonFatalError                    EQU        1                    ; An error occurred, but the job can continue 
  2364. gxFatalError                    EQU        2                    ; A fatal error occurred-- halt job 
  2365. gxPrinterReady                    EQU        3                    ; Tells QDGX to leave alert mode 
  2366. gxUserAttention                    EQU        4                    ; Signals initiation of a modal alert 
  2367. gxUserAlert                        EQU        5                    ; Signals initiation of a moveable modal alert 
  2368. gxPageTransmission                EQU        6                    ; Signals page sent to printer, increments page count in strings to user 
  2369. gxOpenConnectionStatus            EQU        7                    ; Signals QDGX to begin animation on printer icon 
  2370. gxInformationalStatus            EQU        8                    ; Default status type, no side effects 
  2371. gxSpoolingPageStatus            EQU        9                    ; Signals page spooled, increments page count in spooling dialog 
  2372. gxEndStatus                        EQU        10                    ; Signals end of spooling 
  2373. gxPercentageStatus                EQU        11                    ; Signals QDGX as to the amount of the job which is currently complete 
  2374.  
  2375. ;  Structure for gxWriteStatusToDTPWindow message 
  2376. gxDisplayRecord            RECORD 0
  2377. useText                     ds.b    1                ; offset: $0 (0)        ;  Use text as opposed to a picture 
  2378. padByte                     ds.b    1                ; offset: $1 (1)
  2379. hPicture                 ds.l    1                ; offset: $2 (2)        ;  if !useText, the picture handle 
  2380. theText                     ds        Str255            ; offset: $6 (6)        ;  if useText, the text 
  2381. sizeof                     EQU *                    ; size:   $106 (262)
  2382.                         ENDR
  2383.  
  2384. ; -----------------------------------------------
  2385. ;  paper mapping-related constants and types...  
  2386. ; -----------------------------------------------
  2387.  
  2388. ; typedef long                             gxTrayMapping
  2389.  
  2390.  
  2391. gxDefaultTrayMapping            EQU        0
  2392. gxConfiguredTrayMapping            EQU        1
  2393.  
  2394.  
  2395. ;  ------------------------------------------------------------------------------
  2396. ;
  2397. ;                API Functions callable only from within message overrides
  2398. ;
  2399. ;-------------------------------------------------------------------------------- 
  2400.  
  2401.  
  2402. ;    Message Sending API Routines
  2403. ;
  2404.  
  2405. ;
  2406. ;    How to use the GXPRINTINGDISPATCH macro...
  2407. ;    
  2408. ;    If your driver or extension is large, you may want to segment it
  2409. ;    across smaller boundaries than is permitted by the messaging system.
  2410. ;    Without using the Printing Manager's segmentation manager directly,
  2411. ;    the smallest segment you can create consists of the code to override
  2412. ;    a single message.  If you are overriding workhorse messages such as
  2413. ;    RenderPage, you may want to divide up the work among many functions
  2414. ;    distributed across several segments.  Here's how...
  2415. ;    
  2416. ;    The Printing Manager segment scheme involves the construction of a
  2417. ;    single 32-bit dispatch selector, which contains all the information
  2418. ;    necessary for the dispatcher to find a single routine.  It contains the
  2419. ;    segment's resource ID, and the offset within the segment which contains
  2420. ;    the start of the routine.  The GXPRINTINGDISPATCH macro will construct the
  2421. ;    dispatch selector for you, as well as the code to do the dispatch.
  2422. ;    
  2423. ;    Usually, it is convenient to start your segment with a long aligned jump table,
  2424. ;    beginning after the 4 byte header required by the Printing Manager.  The
  2425. ;    macro assumes this is the case and takes a 1-based routine selector from
  2426. ;    which it conmstructs the offset.
  2427. ;    
  2428. ;    For example, if your code is in resource 'pdvr' (print driver), ID=2
  2429. ;    at offset=12 (third routine in segment), you would declare your
  2430. ;    routine as follows:
  2431. ;    
  2432. ;    OSErr MyRenderingRoutine (long param1, Ptr param2)
  2433. ;        = GXPRINTINGDISPATCH(2, 3);
  2434. ;        
  2435. ;    Remember, ALL segment dispatches must return OSErr.  If your routine
  2436. ;    does not generate errors, you must still declare it to return OSErr
  2437. ;    and have the routine itself return noErr.
  2438. ;    
  2439. ;    An alternative way to call across segments is to call the GXPrintingDispatch
  2440. ;    function directly.  You must construct the 32-bit selector yourself and pass
  2441. ;    it as the first parameter.  This is usually not preferable since you don't get
  2442. ;    type-checking unless you declare a prototype as shown above, and your code
  2443. ;    isn't as easy to read.
  2444. ;    
  2445. ;    So given the above prototype, there are two ways to call the function:
  2446. ;    
  2447. ;        anErr = MyRenderingRoutine(p1, p2);            // Free type checking!
  2448. ;        
  2449. ;    or:
  2450. ;    
  2451. ;        #define kMyRenderRoutineSelector 0x0002000C
  2452. ;        anErr = GXPrintingDispatch(kMyRenderRoutineSelector, p1, p2);        // No type-checking!
  2453. ;    
  2454. ;    
  2455. ;    Both have the same effect.
  2456. ;
  2457. ;
  2458.  
  2459. ;
  2460. ; extern gxJob GXGetJob(void )
  2461. ;
  2462.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2463.         Macro
  2464.         _GXGetJob
  2465.             move.l              #$00010001,D0
  2466.             dc.w                $ABFE
  2467.         EndM
  2468.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2469.         IMPORT_CFM_FUNCTION GXGetJob
  2470.     ENDIF
  2471.  
  2472. ;
  2473. ; extern short GXGetMessageHandlerResFile(void )
  2474. ;
  2475.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2476.         Macro
  2477.         _GXGetMessageHandlerResFile
  2478.             move.l              #$00010002,D0
  2479.             dc.w                $ABFE
  2480.         EndM
  2481.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2482.         IMPORT_CFM_FUNCTION GXGetMessageHandlerResFile
  2483.     ENDIF
  2484.  
  2485. ;
  2486. ; extern Boolean GXSpoolingAborted(void )
  2487. ;
  2488.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2489.         Macro
  2490.         _GXSpoolingAborted
  2491.             move.l              #$00010003,D0
  2492.             dc.w                $ABFE
  2493.         EndM
  2494.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2495.         IMPORT_CFM_FUNCTION GXSpoolingAborted
  2496.     ENDIF
  2497.  
  2498. ;
  2499. ; extern OSErr GXJobIdle(void )
  2500. ;
  2501.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2502.         Macro
  2503.         _GXJobIdle
  2504.             move.l              #$00010004,D0
  2505.             dc.w                $ABFE
  2506.         EndM
  2507.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2508.         IMPORT_CFM_FUNCTION GXJobIdle
  2509.     ENDIF
  2510.  
  2511. ;
  2512. ; extern OSErr GXReportStatus(long statusID, unsigned long statusIndex)
  2513. ;
  2514.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2515.         Macro
  2516.         _GXReportStatus
  2517.             move.l              #$00010005,D0
  2518.             dc.w                $ABFE
  2519.         EndM
  2520.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2521.         IMPORT_CFM_FUNCTION GXReportStatus
  2522.     ENDIF
  2523.  
  2524. ;
  2525. ; extern OSErr GXAlertTheUser(gxStatusRecord *statusRec)
  2526. ;
  2527.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2528.         Macro
  2529.         _GXAlertTheUser
  2530.             move.l              #$00010006,D0
  2531.             dc.w                $ABFE
  2532.         EndM
  2533.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2534.         IMPORT_CFM_FUNCTION GXAlertTheUser
  2535.     ENDIF
  2536.  
  2537. ;
  2538. ; extern OSErr GXSetupDialogPanel(gxPanelSetupRecord *panelRec)
  2539. ;
  2540.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2541.         Macro
  2542.         _GXSetupDialogPanel
  2543.             move.l              #$00010007,D0
  2544.             dc.w                $ABFE
  2545.         EndM
  2546.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2547.         IMPORT_CFM_FUNCTION GXSetupDialogPanel
  2548.     ENDIF
  2549.  
  2550. ;
  2551. ; extern OSErr GXCountTrays(gxTrayIndex *numTrays)
  2552. ;
  2553.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2554.         Macro
  2555.         _GXCountTrays
  2556.             move.l              #$00010008,D0
  2557.             dc.w                $ABFE
  2558.         EndM
  2559.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2560.         IMPORT_CFM_FUNCTION GXCountTrays
  2561.     ENDIF
  2562.  
  2563. ;
  2564. ; extern OSErr GXGetTrayName(gxTrayIndex trayNumber, Str31 trayName)
  2565. ;
  2566.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2567.         Macro
  2568.         _GXGetTrayName
  2569.             move.l              #$00010009,D0
  2570.             dc.w                $ABFE
  2571.         EndM
  2572.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2573.         IMPORT_CFM_FUNCTION GXGetTrayName
  2574.     ENDIF
  2575.  
  2576. ;
  2577. ; extern OSErr GXSetTrayPaperType(gxTrayIndex whichTray, gxPaperType aPapertype)
  2578. ;
  2579.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2580.         Macro
  2581.         _GXSetTrayPaperType
  2582.             move.l              #$0001000A,D0
  2583.             dc.w                $ABFE
  2584.         EndM
  2585.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2586.         IMPORT_CFM_FUNCTION GXSetTrayPaperType
  2587.     ENDIF
  2588.  
  2589. ;
  2590. ; extern OSErr GXGetTrayPaperType(gxTrayIndex whichTray, gxPaperType aPapertype)
  2591. ;
  2592.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2593.         Macro
  2594.         _GXGetTrayPaperType
  2595.             move.l              #$0001000B,D0
  2596.             dc.w                $ABFE
  2597.         EndM
  2598.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2599.         IMPORT_CFM_FUNCTION GXGetTrayPaperType
  2600.     ENDIF
  2601.  
  2602. ;
  2603. ; extern OSErr GXGetTrayMapping(gxTrayMapping *trayMapping)
  2604. ;
  2605.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2606.         Macro
  2607.         _GXGetTrayMapping
  2608.             move.l              #$0001000C,D0
  2609.             dc.w                $ABFE
  2610.         EndM
  2611.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2612.         IMPORT_CFM_FUNCTION GXGetTrayMapping
  2613.     ENDIF
  2614.  
  2615. ;
  2616. ; extern void GXCleanupStartJob(void )
  2617. ;
  2618.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2619.         Macro
  2620.         _GXCleanupStartJob
  2621.             move.l              #$0001000D,D0
  2622.             dc.w                $ABFE
  2623.         EndM
  2624.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2625.         IMPORT_CFM_FUNCTION GXCleanupStartJob
  2626.     ENDIF
  2627.  
  2628. ;
  2629. ; extern void GXCleanupStartPage(void )
  2630. ;
  2631.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2632.         Macro
  2633.         _GXCleanupStartPage
  2634.             move.l              #$0001000E,D0
  2635.             dc.w                $ABFE
  2636.         EndM
  2637.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2638.         IMPORT_CFM_FUNCTION GXCleanupStartPage
  2639.     ENDIF
  2640.  
  2641. ;
  2642. ; extern void GXCleanupOpenConnection(void )
  2643. ;
  2644.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2645.         Macro
  2646.         _GXCleanupOpenConnection
  2647.             move.l              #$0001000F,D0
  2648.             dc.w                $ABFE
  2649.         EndM
  2650.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2651.         IMPORT_CFM_FUNCTION GXCleanupOpenConnection
  2652.     ENDIF
  2653.  
  2654. ;
  2655. ; extern void GXCleanupStartSendPage(void )
  2656. ;
  2657.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2658.         Macro
  2659.         _GXCleanupStartSendPage
  2660.             move.l              #$00010010,D0
  2661.             dc.w                $ABFE
  2662.         EndM
  2663.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2664.         IMPORT_CFM_FUNCTION GXCleanupStartSendPage
  2665.     ENDIF
  2666.  
  2667.  
  2668. ;  ------------------------------------------------------------------------------
  2669. ;
  2670. ;                    Constants and types for Universal Printing Messages
  2671. ;
  2672. ;-------------------------------------------------------------------------------- 
  2673.  
  2674.  
  2675. ;  Options for gxCreateSpoolFile message 
  2676.  
  2677. gxNoCreateOptions                EQU        $00000000            ; Just create the file 
  2678. gxInhibitAlias                    EQU        $00000001            ; Do not create an alias in the PMD folder 
  2679. gxInhibitUniqueName                EQU        $00000002            ; Do not append to the filename to make it unique 
  2680. gxResolveBitmapAlias            EQU        $00000004            ; Resolve bitmap aliases and duplicate data in file 
  2681.  
  2682. ;  Options for gxCloseSpoolFile message 
  2683.  
  2684. gxNoCloseOptions                EQU        $00000000            ; Just close the file 
  2685. gxDeleteOnClose                    EQU        $00000001            ; Delete the file rather than closing it 
  2686. gxUpdateJobData                    EQU        $00000002            ; Write current job information into file prior to closing 
  2687. gxMakeRemoteFile                EQU        $00000004            ; Mark job as a remote file 
  2688.  
  2689. ;  Options for gxCreateImageFile message 
  2690.  
  2691. gxNoImageFile                    EQU        $00000000            ; Don't create image file 
  2692. gxMakeImageFile                    EQU        $00000001            ; Create an image file 
  2693. gxEachPlane                        EQU        $00000002            ; Only save up planes before rewinding 
  2694. gxEachPage                        EQU        $00000004            ; Save up entire pages before rewinding 
  2695. gxEntireFile                    EQU        $00000006            ; Save up the entire file before rewinding 
  2696.  
  2697. ;  Options for gxBufferData message 
  2698.  
  2699. gxNoBufferOptions                EQU        $00000000
  2700. gxMakeBufferHex                    EQU        $00000001
  2701. gxDontSplitBuffer                EQU        $00000002
  2702.  
  2703. ;  Structure for gxDumpBuffer and gxFreeBuffer messages 
  2704. gxPrintingBuffer        RECORD 0
  2705. size                     ds.l    1                ; offset: $0 (0)        ;  Size of buffer in bytes 
  2706. userData                 ds.l    1                ; offset: $4 (4)        ;  Client assigned id for the buffer 
  2707. data                     ds.b    1                ; offset: $8 (8) <-- really an array of length one ;  Array of size bytes 
  2708.                          ORG 10
  2709. sizeof                     EQU *                    ; size:   $A (10)
  2710.                         ENDR
  2711.  
  2712. ;  Structure for gxRenderPage message 
  2713. gxPageInfoRecord        RECORD 0
  2714. docPageNum                 ds.l    1                ; offset: $0 (0)        ;  Number of page being printed 
  2715. copyNum                     ds.l    1                ; offset: $4 (4)        ;  Copy number being printed 
  2716. formatChanged             ds.b    1                ; offset: $8 (8)        ;  True if format changed from last page 
  2717. pageChanged                 ds.b    1                ; offset: $9 (9)        ;  True if page contents changed from last page 
  2718. internalUse                 ds.l    1                ; offset: $A (10)        ;  Private 
  2719. sizeof                     EQU *                    ; size:   $E (14)
  2720.                         ENDR
  2721.  
  2722. ;  ------------------------------------------------------------------------------
  2723. ;
  2724. ;                                Universal Printing Messages
  2725. ;
  2726. ;-------------------------------------------------------------------------------- 
  2727.  
  2728. ; *******************************************************************
  2729. ;                    Start of old "GXPrintingErrors.h/a/p" interface file.
  2730. ;            *******************************************************************
  2731.  
  2732.  
  2733. gxPrintingResultBase            EQU        -510                ;First QuickDraw GX printing error code.
  2734. ; RESULT CODES FOR QUICKDRAW GX PRINTING OPERATIONS
  2735.  
  2736. gxAioTimeout                    EQU        -510                ;-510 : Timeout condition occurred during operation
  2737. gxAioBadRqstState                EQU        -511                ;-511 : Async I/O request in invalid state for operation
  2738. gxAioBadConn                    EQU        -512                ;-512 : Invalid Async I/O connection refnum
  2739. gxAioInvalidXfer                EQU        -513                ;-513 : Read data transfer structure contained bad values
  2740. gxAioNoRqstBlks                    EQU        -514                ;-514 : No available request blocks to process request
  2741. gxAioNoDataXfer                    EQU        -515                ;-515 : Data transfer structure pointer not specified
  2742. gxAioTooManyAutos                EQU        -516                ;-516 : Auto status request already active
  2743. gxAioNoAutoStat                    EQU        -517                ;-517 : Connection not configured for auto status
  2744. gxAioBadRqstID                    EQU        -518                ;-518 : Invalid I/O request identifier
  2745. gxAioCantKill                    EQU        -519                ;-519 : Comm. protocol doesn't support I/O term
  2746. gxAioAlreadyExists                EQU        -520                ;-520 : Protocol spec. data already specified
  2747. gxAioCantFind                    EQU        -521                ;-521 : Protocol spec. data does not exist
  2748. gxAioDeviceDisconn                EQU        -522                ;-522 : Machine disconnected from printer
  2749. gxAioNotImplemented                EQU        -523                ;-523 : Function not implemented
  2750. gxAioOpenPending                EQU        -524                ;-524 : Opening a connection for protocol, but another open pending
  2751. gxAioNoProtocolData                EQU        -525                ;-525 : No protocol specific data specified in request
  2752. gxAioRqstKilled                    EQU        -526                ;-526 : I/O request was terminated
  2753. gxBadBaudRate                    EQU        -527                ;-527 : Invalid baud rate specified
  2754. gxBadParity                        EQU        -528                ;-528 : Invalid parity specified
  2755. gxBadStopBits                    EQU        -529                ;-529 : Invalid stop bits specified
  2756. gxBadDataBits                    EQU        -530                ;-530 : Invalid data bits specified
  2757. gxBadPrinterName                EQU        -531                ;-531 : Bad printer name specified
  2758. gxAioBadMsgType                    EQU        -532                ;-532 : Bad masType field in transfer info structure
  2759. gxAioCantFindDevice                EQU        -533                ;-533 : Cannot locate target device
  2760. gxAioOutOfSeq                    EQU        -534                ;-534 : Non-atomic SCSI requests submitted out of sequence
  2761. gxPrIOAbortErr                    EQU        -535                ;-535 : I/O operation aborted
  2762. gxPrUserAbortErr                EQU        -536                ;-536 : User aborted
  2763. gxCantAddPanelsNowErr            EQU        -537                ;-537 : Can only add panels during driver switch or dialog setup
  2764. gxBadxdtlKeyErr                    EQU        -538                ;-538 : Unknown key for xdtl - must be radiobutton, etc
  2765. gxXdtlItemOutOfRangeErr            EQU        -539                ;-539 : Referenced item does not belong to panel
  2766. gxNoActionButtonErr                EQU        -540                ;-540 : Action button is nil
  2767. gxTitlesTooLongErr                EQU        -541                ;-541 : Length of buttons exceeds alert maximum width
  2768. gxUnknownAlertVersionErr        EQU        -542                ;-542 : Bad version for printing alerts
  2769. gxGBBufferTooSmallErr            EQU        -543                ;-543 : Buffer too small.
  2770. gxInvalidPenTable                EQU        -544                ;-544 : Invalid vector driver pen table.
  2771. gxIncompletePrintFileErr        EQU        -545                ;-545 : Print file was not completely spooled
  2772. gxCrashedPrintFileErr            EQU        -546                ;-546 : Print file is corrupted
  2773. gxInvalidPrintFileVersion        EQU        -547                ;-547 : Print file is incompatible with current QuickDraw GX version
  2774. gxSegmentLoadFailedErr            EQU        -548                ;-548 : Segment loader error
  2775. gxExtensionNotFoundErr            EQU        -549                ;-549 : Requested printing extension could not be found
  2776. gxDriverVersionErr                EQU        -550                ;-550 : Driver too new for current version of QuickDraw GX
  2777. gxImagingSystemVersionErr        EQU        -551                ;-551 : Imaging system too new for current version of QuickDraw GX
  2778. gxFlattenVersionTooNew            EQU        -552                ;-552 : Flattened object format too new for current version of QDGX
  2779. gxPaperTypeNotFound                EQU        -553                ;-553 : Requested papertype could not be found
  2780. gxNoSuchPTGroup                    EQU        -554                ;-554 : Requested papertype group could not be found
  2781. gxNotEnoughPrinterMemory        EQU        -555                ;-555 : Printer does not have enough memory for fonts in document
  2782. gxDuplicatePanelNameErr            EQU        -556                ;-556 : Attempt to add more than 10 panels with the same name
  2783. gxExtensionVersionErr            EQU        -557                ;-557 : Extension too new for current version of QuickDraw GX
  2784.  
  2785.  
  2786.     ENDIF ; __GXPRINTING__ 
  2787.  
  2788.